|
From: <pka...@us...> - 2009-08-02 23:05:50
|
Revision: 432
http://cse-ip.svn.sourceforge.net/cse-ip/?rev=432&view=rev
Author: pkasprzak
Date: 2009-08-02 23:05:40 +0000 (Sun, 02 Aug 2009)
Log Message:
-----------
* Stuff :)
Modified Paths:
--------------
trunk/sandbox/lsf-adapter-demo/CSECore-ejb/src/java/de/campussource/cse/core/DependencyManagerImpl.java
trunk/sandbox/lsf-adapter-demo/CSECore-ejb/src/java/de/campussource/cse/core/SystemManagerImpl.java
trunk/sandbox/lsf-adapter-demo/CSECore-ejb/src/java/de/campussource/cse/core/pdm/WaitingProcess.java
Added Paths:
-----------
trunk/sandbox/lsf-adapter-demo/CSECore-ejb/src/conf/wsdl/client/DependencyManager/DependencyManager.xsd
Added: trunk/sandbox/lsf-adapter-demo/CSECore-ejb/src/conf/wsdl/client/DependencyManager/DependencyManager.xsd
===================================================================
--- trunk/sandbox/lsf-adapter-demo/CSECore-ejb/src/conf/wsdl/client/DependencyManager/DependencyManager.xsd (rev 0)
+++ trunk/sandbox/lsf-adapter-demo/CSECore-ejb/src/conf/wsdl/client/DependencyManager/DependencyManager.xsd 2009-08-02 23:05:40 UTC (rev 432)
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- Published by JAX-WS RI at http://jax-ws.dev.java.net. RI's version is JAX-WS RI 2.1.3.1-hudson-749-SNAPSHOT. -->
+<xs:schema xmlns:tns="http://cse.campussource.de/ejb/DependencyManager" xmlns:xs="http://www.w3.org/2001/XMLSchema" version="1.0" targetNamespace="http://cse.campussource.de/ejb/DependencyManager">
+
+ <xs:element name="satisfyDependencies" type="tns:satisfyDependencies"></xs:element>
+
+ <xs:element name="waitForDependencies" type="tns:waitForDependencies"></xs:element>
+
+ <xs:complexType name="satisfyDependencies">
+ <xs:sequence>
+ <xs:element name="entityId" type="xs:int"></xs:element>
+ <xs:element name="system" type="xs:string" minOccurs="0"></xs:element>
+ </xs:sequence>
+ </xs:complexType>
+
+ <xs:complexType name="waitForDependencies">
+ <xs:sequence>
+ <xs:element name="entityId" type="xs:int"></xs:element>
+ </xs:sequence>
+
+ </xs:complexType>
+</xs:schema>
\ No newline at end of file
Modified: trunk/sandbox/lsf-adapter-demo/CSECore-ejb/src/java/de/campussource/cse/core/DependencyManagerImpl.java
===================================================================
--- trunk/sandbox/lsf-adapter-demo/CSECore-ejb/src/java/de/campussource/cse/core/DependencyManagerImpl.java 2009-08-02 23:04:16 UTC (rev 431)
+++ trunk/sandbox/lsf-adapter-demo/CSECore-ejb/src/java/de/campussource/cse/core/DependencyManagerImpl.java 2009-08-02 23:05:40 UTC (rev 432)
@@ -70,13 +70,19 @@
// ----------------------------------------------------------------------------------------------------------------
@Timeout
public void handleTimeout(Timer timer) {
- logger.info("*** Timer called => waking up process!");
+ logger.info("*** Timer called:");
+
+ WaitingProcess process = (WaitingProcess) timer.getInfo();
+ wakeUpWaitingProcess(process);
+/*
+ // For Debugging purposes
List<WaitingProcess> processes = getBySystem("Ilias");
if (!processes.isEmpty()) {
wakeUpWaitingProcess(processes.get(0));
} else {
logger.info("*** No processes waiting => doing nothing!");
}
+ */
}
// ----------------------------------------------------------------------------------------------------------------
@@ -91,6 +97,8 @@
// ----------------------------------------------------------------------------------------------------------------
protected boolean updateDependencies(WaitingProcess process) {
+ logger.info("*** Updating dependency status for process " + process);
+
boolean satisfied = true;
process = em.merge(process);
for (Dependency dependency : process.getDependencies()) {
@@ -103,6 +111,13 @@
}
}
}
+
+ if (satisfied) {
+ logger.info(" => SATISFIED");
+ } else {
+ logger.info(" => UNSATISFIED");
+ }
+
return satisfied;
}
@@ -145,7 +160,7 @@
// ----------------------------------------------------------------------------------------------------------------
public void waitForDependencies(int cseId) {
- init();
+// init();
Entity entity = em.find(Entity.class, cseId);
@@ -185,7 +200,11 @@
/* At this point all dependencies for the current entity + system have been generated => so update them */
if (updateDependencies(process)) {
- wakeUpWaitingProcess(process);
+ /* We can't directly wake-up this entity because the ws-call is still in progress and we can't
+ initiate a client ws-call or the bpel process will just block forever...
+ So we use a timer :) */
+ ctx.getTimerService().createTimer(20000, process);
+// wakeUpWaitingProcess(process);
}
}
}
@@ -203,6 +222,7 @@
// ----------------------------------------------------------------------------------------------------------------
protected void wakeUpWaitingProcess(WaitingProcess process) {
+ logger.info("*** Waking up process " + process);
Entity entity = em.find(Entity.class, process.getEntityId());
Modified: trunk/sandbox/lsf-adapter-demo/CSECore-ejb/src/java/de/campussource/cse/core/SystemManagerImpl.java
===================================================================
--- trunk/sandbox/lsf-adapter-demo/CSECore-ejb/src/java/de/campussource/cse/core/SystemManagerImpl.java 2009-08-02 23:04:16 UTC (rev 431)
+++ trunk/sandbox/lsf-adapter-demo/CSECore-ejb/src/java/de/campussource/cse/core/SystemManagerImpl.java 2009-08-02 23:05:40 UTC (rev 432)
@@ -22,6 +22,7 @@
List<String> systems = new LinkedList<String>();
systems.add("Ilias");
+// systems.add("Dummy");
return systems;
}
Modified: trunk/sandbox/lsf-adapter-demo/CSECore-ejb/src/java/de/campussource/cse/core/pdm/WaitingProcess.java
===================================================================
--- trunk/sandbox/lsf-adapter-demo/CSECore-ejb/src/java/de/campussource/cse/core/pdm/WaitingProcess.java 2009-08-02 23:04:16 UTC (rev 431)
+++ trunk/sandbox/lsf-adapter-demo/CSECore-ejb/src/java/de/campussource/cse/core/pdm/WaitingProcess.java 2009-08-02 23:05:40 UTC (rev 432)
@@ -75,7 +75,7 @@
@Override
public String toString() {
- return "de.campussource.cse.core.pdm.WaitingProcess[id=" + id + "]";
+ return "[" + getSystem() + ": " + getEntityId() + "]";
}
public Long getId() {
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|