Author: michiel
Date: 2009-11-23 21:05:08 +0100 (Mon, 23 Nov 2009)
New Revision: 39863
Modified:
mmbase/trunk/applications/streams/src/main/java/org/mmbase/streams/createcaches/Job.java
mmbase/trunk/applications/streams/src/main/java/org/mmbase/streams/createcaches/JobCallable.java
mmbase/trunk/applications/streams/src/main/java/org/mmbase/streams/createcaches/JobDefinition.java
mmbase/trunk/applications/streams/src/main/java/org/mmbase/streams/createcaches/Processor.java
Log:
made test-cases succeed again
Modified:
mmbase/trunk/applications/streams/src/main/java/org/mmbase/streams/createcaches/Job.java
===================================================================
---
mmbase/trunk/applications/streams/src/main/java/org/mmbase/streams/createcaches/Job.java
2009-11-23 20:04:43 UTC (rev 39862)
+++
mmbase/trunk/applications/streams/src/main/java/org/mmbase/streams/createcaches/Job.java
2009-11-23 20:05:08 UTC (rev 39863)
@@ -31,9 +31,10 @@
/**
* A Job is associated with a 'source' node, and describes what is currently
happening to create
- * 'caches' nodes for it. Such a Job object is created everytime somebody
create a new source
+ * 'caches' nodes for it. Such a Job object is created everytime somebody
creates a new source
* object, or explicitly triggers the associated 'cache' objects to be
(re)created.
- *
+
+ * @version $Id$
*/
public class Job implements Iterable<Result> {
private static final Logger LOG = Logging.getLoggerInstance(Job.class);
@@ -419,7 +420,7 @@
LOG.info("Comparing for " + getStage() + ">=" + s);
return getStage().ordinal() >= s.ordinal();
}
-
+
synchronized public void ready() {
if (isInterrupted()) {
ready = true;
@@ -432,7 +433,7 @@
} else {
LOG.warn("This job has not completed yet.");
}
- ready = true; // BUG: ?! not correct
+ ready = true;
}
public synchronized void waitUntil(Stage stage)
Modified:
mmbase/trunk/applications/streams/src/main/java/org/mmbase/streams/createcaches/JobCallable.java
===================================================================
---
mmbase/trunk/applications/streams/src/main/java/org/mmbase/streams/createcaches/JobCallable.java
2009-11-23 20:04:43 UTC (rev 39862)
+++
mmbase/trunk/applications/streams/src/main/java/org/mmbase/streams/createcaches/JobCallable.java
2009-11-23 20:05:08 UTC (rev 39863)
@@ -169,13 +169,14 @@
if (! thisJob.isInterrupted()) {
logger.info("READY " + thisJob + "(" +
thisJob.getNode().getNodeManager().getName() + ":" +
thisJob.getNode().getNumber() + ")");
//thisJob.getNode().commit();
+ thisJob.ready();
}
} catch (RuntimeException e) {
logger.error(e.getMessage(), e);
throw e;
} finally {
logger.info("FINALLY " + resultCount);
- thisJob.ready(); // notify waiters
+ thisJob.notifyAll(); // notify waiters
//runningJobs.remove(thisJob.getNode().getNumber());
}
logger.info("3: returning resultCount: " + resultCount);
Modified:
mmbase/trunk/applications/streams/src/main/java/org/mmbase/streams/createcaches/JobDefinition.java
===================================================================
---
mmbase/trunk/applications/streams/src/main/java/org/mmbase/streams/createcaches/JobDefinition.java
2009-11-23 20:04:43 UTC (rev 39862)
+++
mmbase/trunk/applications/streams/src/main/java/org/mmbase/streams/createcaches/JobDefinition.java
2009-11-23 20:05:08 UTC (rev 39863)
@@ -20,7 +20,9 @@
/**
* The description or definition of one 'transcoding' sub jobs that's doing
the transcoding. This
* combines a transcoder, with a mime type for which it must be valid, and a
list of analyzers.
+ *
* @author Michiel Meeuwissen
+ * @version $Id$
*/
class JobDefinition implements Serializable {
private static final long serialVersionUID = 0L;
Modified:
mmbase/trunk/applications/streams/src/main/java/org/mmbase/streams/createcaches/Processor.java
===================================================================
---
mmbase/trunk/applications/streams/src/main/java/org/mmbase/streams/createcaches/Processor.java
2009-11-23 20:04:43 UTC (rev 39862)
+++
mmbase/trunk/applications/streams/src/main/java/org/mmbase/streams/createcaches/Processor.java
2009-11-23 20:05:08 UTC (rev 39863)
@@ -35,9 +35,7 @@
* This commit-processor is used on nodes of type 'streamsources' and is used
to initiate the
* conversions to other formats which are saved in 'streamsourcescaches'. Its
analogy is derived
* from the conversion of 'images' in MMBase to their resulting 'icaches'
nodes.
- * Several transcodings of media files can be configured with recognizers and
transcoders. The
- * recognizer with id 'recognizer' can be configured before the transcodings
start to look
- * if the sources contain the correct type (video, audio or image).
+ * Several transcodings of media files can be configured with recognizers and
transcoders.
*
* @author Michiel Meeuwissen
* @version $Id$
@@ -258,7 +256,7 @@
public static Job getJob(Node node) {
return runningJobs.get(node.getNumber());
}
-
+
protected static boolean removeJob(Node node) {
Job job = runningJobs.get(node.getNumber());
boolean done = job.future.isDone();
@@ -315,9 +313,9 @@
LOG.warn("This job is already running, node #" + node);
return null;
}
+ assert node > 0;
final Job thisJob = new Job(this, ntCloud, logger);
runningJobs.put(node, thisJob);
-
thisJob.submit(ntCloud, node, logger);
return thisJob;
@@ -349,7 +347,7 @@
}
}
@Override
- public String toString() {
+ public String toString() {
return "Job canceled for " + node;
}
});
_______________________________________________
Cvs mailing list
[email protected]
http://lists.mmbase.org/mailman/listinfo/cvs