Author: thomas.diesler(a)jboss.com
Date: 2008-12-02 10:38:37 -0500 (Tue, 02 Dec 2008)
New Revision: 3162
Added:
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/api/service/internal/
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/api/service/internal/AbstractDeploymentService.java
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/api/service/internal/AbstractDialectHandler.java
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/api/service/internal/AbstractDialectHandlerService.java
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/api/service/internal/AbstractIdentityService.java
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/api/service/internal/AbstractProcessDefinitionService.java
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/api/service/internal/AbstractProcessService.java
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/api/service/internal/AbstractService.java
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/api/service/internal/AbstractTaskService.java
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/incubator/service/PersistenceService.java
Removed:
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/api/service/AbstractDialectHandler.java
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/api/service/AbstractService.java
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/api/service/PersistenceService.java
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/incubator/client/Deployment.java
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/incubator/service/DeploymentService.java
Modified:
projects/spec/trunk/modules/api/.classpath
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/api/service/DialectHandlerService.java
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/api/service/ExecutionService.java
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/api/service/IdentityService.java
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/api/service/ProcessBuilderService.java
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/api/service/ProcessDefinitionService.java
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/api/service/ProcessService.java
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/api/service/TaskService.java
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/incubator/service/MessageBuilderService.java
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/incubator/service/MessageService.java
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/incubator/service/SignalBuilderService.java
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/incubator/service/SignalService.java
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/incubator/service/ThreadingService.java
projects/spec/trunk/modules/cts/src/test/java/org/jboss/bpm/test/cts/gateway/exclusive/ExclusiveGatewaySplitMarshallerTest.java
projects/spec/trunk/modules/cts/src/test/java/org/jboss/bpm/test/cts/service/process/ProcessDefinitionServiceTest.java
projects/spec/trunk/modules/cts/src/test/java/org/jboss/bpm/test/cts/service/process/ProcessServiceTest.java
projects/spec/trunk/modules/cts/src/test/java/org/jboss/bpm/test/cts/task/waitstate/WaitStateMarshallerTest.java
projects/spec/trunk/modules/cts/src/test/java/org/jboss/bpm/test/incubator/startevent/StartEventSignalTest.java
projects/spec/trunk/modules/cts/src/test/java/org/jboss/bpm/test/incubator/task/receive/ReceiveTaskTest.java
projects/spec/trunk/modules/cts/src/test/java/org/jboss/bpm/test/incubator/task/user/UserTaskTest.java
projects/spec/trunk/modules/cts/src/test/java/org/jboss/bpm/test/incubator/transaction/TxRequiredMarshallerTest.java
projects/spec/trunk/modules/cts/src/test/java/org/jboss/bpm/test/pattern/control/sequence/SequencePersistenceTest.java
projects/spec/trunk/modules/dialects/api10/src/main/java/org/jboss/bpm/dialect/api10/DialectHandlerImpl.java
projects/spec/trunk/modules/dialects/jpdl32/src/main/java/org/jboss/bpm/dialect/jpdl32/DialectHandlerImpl.java
projects/spec/trunk/modules/dialects/stp/src/main/java/org/jboss/bpm/dialect/stp/DialectHandlerImpl.java
projects/spec/trunk/modules/dialects/xpdl21/src/main/java/org/jboss/bpm/dialect/xpdl21/DialectHandlerImpl.java
projects/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/ProcessImpl.java
projects/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/runtime/PersistenceSessionInterceptor.java
projects/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/runtime/TransactionInterceptor.java
projects/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/service/DialectHandlerServiceImpl.java
projects/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/service/HibernatePersistenceServiceImpl.java
projects/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/service/InMemoryPersistenceServiceImpl.java
projects/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/service/ProcessDefinitionServiceImpl.java
projects/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/service/ProcessServiceImpl.java
projects/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/service/ThreadingServiceImpl.java
projects/spec/trunk/modules/ri/src/test/java/org/jboss/bpm/test/ri/dialect/stp/sequence/SequenceTest.java
projects/spec/trunk/modules/ri/src/test/java/org/jboss/bpm/test/ri/service/persistence/NodePersistenceTest.java
projects/spec/trunk/modules/ri/src/test/java/org/jboss/bpm/test/ri/service/persistence/ProcessDefinitionPersistenceTest.java
projects/spec/trunk/modules/ri/src/test/java/org/jboss/bpm/test/ri/service/persistence/ProcessPersistenceTest.java
projects/spec/trunk/modules/samples/airticket/server/src/main/java/org/jboss/bpm/samples/airticket/server/AirticketServiceImpl.java
Log:
Use interfaces for services
Modified: projects/spec/trunk/modules/api/.classpath
===================================================================
--- projects/spec/trunk/modules/api/.classpath 2008-12-02 10:16:43 UTC (rev 3161)
+++ projects/spec/trunk/modules/api/.classpath 2008-12-02 15:38:37 UTC (rev 3162)
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
- <classpathentry kind="src" path="src/main/java"/>
+ <classpathentry kind="src" output="target/classes"
path="src/main/java"/>
+ <classpathentry kind="con"
path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
<classpathentry kind="con"
path="org.maven.ide.eclipse.MAVEN2_CLASSPATH_CONTAINER"/>
- <classpathentry kind="con"
path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
<classpathentry kind="output" path="target/classes"/>
</classpath>
Deleted:
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/api/service/AbstractDialectHandler.java
===================================================================
---
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/api/service/AbstractDialectHandler.java 2008-12-02
10:16:43 UTC (rev 3161)
+++
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/api/service/AbstractDialectHandler.java 2008-12-02
15:38:37 UTC (rev 3162)
@@ -1,48 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2005, JBoss Inc., and individual contributors as indicated
- * by the @authors tag. See the copyright.txt in the distribution for a
- * full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site:
http://www.fsf.org.
- */
-package org.jboss.bpm.api.service;
-
-import org.jboss.bpm.api.client.ProcessEngine;
-
-//$Id$
-
-/**
- * The DialectHandler converts a supported dialect to the ProcessDefinition model.
- *
- * @author thomas.diesler(a)jboss.com
- * @since 18-Jun-2008
- */
-public abstract class AbstractDialectHandler implements DialectHandler
-{
- private ProcessEngine engine;
-
- public ProcessEngine getProcessEngine()
- {
- return engine;
- }
-
- // Do not expose through the API
- protected void setProcessEngine(ProcessEngine engine)
- {
- this.engine = engine;
- }
-}
Deleted:
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/api/service/AbstractService.java
===================================================================
---
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/api/service/AbstractService.java 2008-12-02
10:16:43 UTC (rev 3161)
+++
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/api/service/AbstractService.java 2008-12-02
15:38:37 UTC (rev 3162)
@@ -1,48 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2005, JBoss Inc., and individual contributors as indicated
- * by the @authors tag. See the copyright.txt in the distribution for a
- * full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site:
http://www.fsf.org.
- */
-package org.jboss.bpm.api.service;
-
-// $Id$
-
-import org.jboss.bpm.api.client.ProcessEngine;
-
-/**
- * An abstract Service that gives access to the ProcessEngine
- *
- * @author thomas.diesler(a)jboss.com
- * @since 18-Jun-2008
- */
-public class AbstractService implements Service
-{
- private ProcessEngine engine;
-
- public ProcessEngine getProcessEngine()
- {
- return engine;
- }
-
- // Do not expose through the API
- protected void setProcessEngine(ProcessEngine engine)
- {
- this.engine = engine;
- }
-}
Modified:
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/api/service/DialectHandlerService.java
===================================================================
---
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/api/service/DialectHandlerService.java 2008-12-02
10:16:43 UTC (rev 3161)
+++
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/api/service/DialectHandlerService.java 2008-12-02
15:38:37 UTC (rev 3162)
@@ -24,35 +24,18 @@
//$Id$
import java.net.URI;
-import java.util.Map;
-
/**
* A registry that maps namespaceURI to a {@link DialectHandler}
*
* @author thomas.diesler(a)jboss.com
* @since 18-Jul-2008
*/
-public abstract class DialectHandlerService extends AbstractService
+public interface DialectHandlerService
{
- // Maps namespaceURI to a DialectHandler
- protected Map<URI, DialectHandler> dialectHandlers;
/**
* Get the handler for the dialect with the given namespace URI
*/
- public DialectHandler getDialectHandler(URI nsURI)
- {
- DialectHandler dialectHandler = dialectHandlers.get(nsURI);
- if (dialectHandler == null)
- throw new IllegalStateException("No dialect handler registered for: " +
nsURI);
-
- if (dialectHandler instanceof AbstractDialectHandler)
- {
- AbstractDialectHandler absHandler = (AbstractDialectHandler)dialectHandler;
- absHandler.setProcessEngine(getProcessEngine());
- }
-
- return dialectHandler;
- }
-}
+ DialectHandler getDialectHandler(URI nsURI);
+}
\ No newline at end of file
Modified:
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/api/service/ExecutionService.java
===================================================================
---
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/api/service/ExecutionService.java 2008-12-02
10:16:43 UTC (rev 3161)
+++
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/api/service/ExecutionService.java 2008-12-02
15:38:37 UTC (rev 3162)
@@ -28,6 +28,7 @@
import javax.management.ObjectName;
import org.jboss.bpm.api.runtime.Token;
+import org.jboss.bpm.api.service.internal.AbstractService;
/**
Modified:
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/api/service/IdentityService.java
===================================================================
---
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/api/service/IdentityService.java 2008-12-02
10:16:43 UTC (rev 3161)
+++
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/api/service/IdentityService.java 2008-12-02
15:38:37 UTC (rev 3162)
@@ -25,37 +25,33 @@
import java.util.List;
-
/**
* The IdentityService manages identities
*
* @author thomas.diesler(a)jboss.com
* @since 28-Nov-2008
*/
-public abstract class IdentityService extends AbstractService
+public interface IdentityService
{
- // Hide public constructor
- protected IdentityService()
- {
- }
/**
* Get a list of groups.
*/
- public abstract List<String> getGroups();
-
+ List<String> getGroups();
+
/**
* Get a list of groups a given actor belongs to.
*/
- public abstract List<String> getGroupsByActor(String actor);
-
+ List<String> getGroupsByActor(String actor);
+
/**
* Get a list of groups.
*/
- public abstract List<String> getActors();
-
+ List<String> getActors();
+
/**
* Get a list of actors that belong to a given group.
*/
- public abstract List<String> getActorsByGroup(String group);
-}
+ List<String> getActorsByGroup(String group);
+
+}
\ No newline at end of file
Deleted:
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/api/service/PersistenceService.java
===================================================================
---
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/api/service/PersistenceService.java 2008-12-02
10:16:43 UTC (rev 3161)
+++
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/api/service/PersistenceService.java 2008-12-02
15:38:37 UTC (rev 3162)
@@ -1,85 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2005, JBoss Inc., and individual contributors as indicated
- * by the @authors tag. See the copyright.txt in the distribution for a
- * full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site:
http://www.fsf.org.
- */
-package org.jboss.bpm.api.service;
-
-// $Id$
-
-import javax.management.ObjectName;
-
-import org.hibernate.Session;
-import org.jboss.bpm.api.model.Node;
-import org.jboss.bpm.api.model.Process;
-import org.jboss.bpm.api.model.ProcessDefinition;
-
-/**
- * The persistence service.
- *
- * @author thomas.diesler(a)jboss.com
- * @since 17-Sep-2008
- */
-public abstract class PersistenceService extends AbstractService
-{
- /**
- * Create a new persistence session
- */
- public abstract Session createSession();
-
- /**
- * Save the ProcessDefinition to persistent storage
- */
- public abstract ObjectName saveProcessDefinition(ProcessDefinition procDef);
-
- /**
- * Load the ProcessDefinition from persistent storage
- */
- public abstract ProcessDefinition loadProcessDefinition(ObjectName procDefID);
-
- /**
- * Delete the ProcessDefinition from persistent storage
- */
- public abstract void deleteProcessDefinition(ProcessDefinition procDef);
-
- /**
- * Save the Process to persistent storage
- */
- public abstract ObjectName saveProcess(Process proc);
-
- /**
- * Load the Process from persistent storage
- */
- public abstract Process loadProcess(ObjectName procID);
-
- /**
- * Delete the Process from persistent storage
- */
- public abstract void deleteProcess(Process proc);
-
- /**
- * Save the Node to persistent storage
- */
- public abstract ObjectName saveNode(Session session, Node node);
-
- /**
- * Load the Node from persistent storage
- */
- public abstract <T extends Node> T loadNode(Session session, Class<T>
clazz, ObjectName nodeID);
-}
\ No newline at end of file
Modified:
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/api/service/ProcessBuilderService.java
===================================================================
---
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/api/service/ProcessBuilderService.java 2008-12-02
10:16:43 UTC (rev 3161)
+++
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/api/service/ProcessBuilderService.java 2008-12-02
15:38:37 UTC (rev 3162)
@@ -25,6 +25,7 @@
import org.jboss.bpm.api.model.Process;
import org.jboss.bpm.api.model.builder.ProcessBuilder;
+import org.jboss.bpm.api.service.internal.AbstractService;
/**
* The ProcessBuilder can be used to build a {@link Process} dynamically.
Modified:
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/api/service/ProcessDefinitionService.java
===================================================================
---
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/api/service/ProcessDefinitionService.java 2008-12-02
10:16:43 UTC (rev 3161)
+++
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/api/service/ProcessDefinitionService.java 2008-12-02
15:38:37 UTC (rev 3162)
@@ -23,22 +23,13 @@
//$Id$
-import java.io.ByteArrayInputStream;
import java.io.IOException;
-import java.io.InputStream;
-import java.net.URI;
import java.net.URL;
import java.util.Set;
import javax.management.ObjectName;
-import javax.xml.parsers.DocumentBuilder;
-import javax.xml.parsers.DocumentBuilderFactory;
import org.jboss.bpm.api.model.ProcessDefinition;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
/**
* The ProcessDefinitionService is the entry point to create, find and otherwise manage
process definitions.
@@ -46,86 +37,36 @@
* @author thomas.diesler(a)jboss.com
* @since 25-Sep-2008
*/
-public abstract class ProcessDefinitionService extends AbstractService
+public interface ProcessDefinitionService
{
- // Provide logging
- final static Logger log = LoggerFactory.getLogger(ProcessDefinitionService.class);
-
- // Hide public constructor
- protected ProcessDefinitionService()
- {
- }
-
/**
* Register a ProcessDefinition.
*/
- public abstract ObjectName registerProcessDefinition(ProcessDefinition procDef);
+ ProcessDefinition registerProcessDefinition(ProcessDefinition procDef);
/**
* Unregister a ProcessDefinition.
*/
- public abstract boolean unregisterProcessDefinition(ObjectName procDefID);
+ boolean unregisterProcessDefinition(ObjectName procDefID);
/**
* Get a ProcessDefinition for a given id
*/
- public abstract ProcessDefinition getProcessDefinition(ObjectName procDefID);
+ ProcessDefinition getProcessDefinition(ObjectName procDefID);
/**
* Get the set of registered ProcessDefinition names
*/
- public abstract Set<ObjectName> getProcessDefinitions();
+ Set<ObjectName> getProcessDefinitions();
/**
* Create a ProcessDefinition from a XML string in one of the supported formats
*/
- public final ProcessDefinition parseProcessDefinition(String pXML)
- {
- URI nsURI = getNamespaceURI(new ByteArrayInputStream(pXML.getBytes()));
- DialectHandlerService dhService =
getProcessEngine().getService(DialectHandlerService.class);
- DialectHandler dialectHandler = dhService.getDialectHandler(nsURI);
- if (dialectHandler == null)
- throw new IllegalStateException("Cannot obtain DialectHandler for: " +
nsURI);
-
- ProcessDefinition procDef = dialectHandler.parseProcessDefinition(pXML);
- return procDef;
- }
+ ProcessDefinition parseProcessDefinition(String pXML);
/**
* Create a ProcessDefinition from an URL to a XML descritor in one of the supported
formats
*/
- public final ProcessDefinition parseProcessDefinition(URL pURL) throws IOException
- {
- URI nsURI = getNamespaceURI(pURL.openStream());
- DialectHandlerService dhService =
getProcessEngine().getService(DialectHandlerService.class);
- DialectHandler dialectHandler = dhService.getDialectHandler(nsURI);
- if (dialectHandler == null)
- throw new IllegalStateException("Cannot obtain DialectHandler for: " +
nsURI);
-
- ProcessDefinition procDef = dialectHandler.parseProcessDefinition(pURL);
- return procDef;
- }
-
- private URI getNamespaceURI(InputStream procXML)
- {
- DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
- dbf.setNamespaceAware(true);
- Document doc;
- try
- {
- DocumentBuilder db = dbf.newDocumentBuilder();
- doc = db.parse(procXML);
- }
- catch (Exception ex)
- {
- throw new IllegalStateException("Cannot parse process descriptor", ex);
- }
+ ProcessDefinition parseProcessDefinition(URL pURL) throws IOException;
- Element root = doc.getDocumentElement();
- String nsURI = root.getNamespaceURI();
- if (nsURI == null)
- throw new IllegalStateException("Cannot get namespace URI from root
element");
-
- return URI.create(nsURI);
- }
}
\ No newline at end of file
Modified:
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/api/service/ProcessService.java
===================================================================
---
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/api/service/ProcessService.java 2008-12-02
10:16:43 UTC (rev 3161)
+++
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/api/service/ProcessService.java 2008-12-02
15:38:37 UTC (rev 3162)
@@ -36,32 +36,28 @@
* @author thomas.diesler(a)jboss.com
* @since 25-Sep-2008
*/
-public abstract class ProcessService extends AbstractService
+public interface ProcessService
{
- // Hide public constructor
- protected ProcessService()
- {
- }
/**
* Register a Process.
*/
- public abstract ObjectName registerProcess(Process proc);
+ ObjectName registerProcess(Process proc);
/**
* Unregister a Process.
*/
- public abstract boolean unregisterProcess(ObjectName procID);
+ boolean unregisterProcess(ObjectName procID);
/**
* Get a Process for a given id
*/
- public abstract Process getProcess(ObjectName procID);
+ Process getProcess(ObjectName procID);
/**
* Get the set of registered Processes
*/
- public abstract Set<ObjectName> getProcesses();
+ Set<ObjectName> getProcesses();
/**
* Get the set of Processes for a given ProcessDefinition
@@ -70,5 +66,6 @@
* @param status The optional process status
* @return An empty set if the process cannot be found
*/
- public abstract Set<ObjectName> getProcesses(ObjectName procDefID, ProcessStatus
status);
+ Set<ObjectName> getProcesses(ObjectName procDefID, ProcessStatus status);
+
}
\ No newline at end of file
Modified:
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/api/service/TaskService.java
===================================================================
---
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/api/service/TaskService.java 2008-12-02
10:16:43 UTC (rev 3161)
+++
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/api/service/TaskService.java 2008-12-02
15:38:37 UTC (rev 3162)
@@ -21,7 +21,7 @@
*/
package org.jboss.bpm.api.service;
-// $Id$
+//$Id$
import java.util.List;
@@ -29,25 +29,21 @@
import org.jboss.bpm.api.task.Task;
-
/**
* The TaskService manages Tasks.
*
* @author thomas.diesler(a)jboss.com
* @since 28-Nov-2008
*/
-public abstract class TaskService extends AbstractService
+public interface TaskService
{
- // Hide public constructor
- protected TaskService()
- {
- }
- public abstract Task getTask(ObjectName taskID);
+ Task getTask(ObjectName taskID);
- public abstract List<Task> getTasksByActor(String actor);
+ List<Task> getTasksByActor(String actor);
- public abstract void reassignTask(ObjectName taskID, String actor);
-
- public abstract void closeTask(ObjectName taskID, String signalName);
-}
+ void reassignTask(ObjectName taskID, String actor);
+
+ void closeTask(ObjectName taskID, String signalName);
+
+}
\ No newline at end of file
Added:
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/api/service/internal/AbstractDeploymentService.java
===================================================================
---
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/api/service/internal/AbstractDeploymentService.java
(rev 0)
+++
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/api/service/internal/AbstractDeploymentService.java 2008-12-02
15:38:37 UTC (rev 3162)
@@ -0,0 +1,37 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site:
http://www.fsf.org.
+ */
+package org.jboss.bpm.api.service.internal;
+
+import org.jboss.bpm.api.service.DeploymentService;
+
+//$Id$
+
+
+/**
+ * The DeploymentService creates, deployes and undeployes ProcessDefinitions.
+ *
+ * @author thomas.diesler(a)jboss.com
+ * @since 25-Sep-2008
+ */
+public abstract class AbstractDeploymentService extends AbstractService implements
DeploymentService
+{
+}
\ No newline at end of file
Property changes on:
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/api/service/internal/AbstractDeploymentService.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Copied:
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/api/service/internal/AbstractDialectHandler.java
(from rev 3150,
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/api/service/AbstractDialectHandler.java)
===================================================================
---
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/api/service/internal/AbstractDialectHandler.java
(rev 0)
+++
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/api/service/internal/AbstractDialectHandler.java 2008-12-02
15:38:37 UTC (rev 3162)
@@ -0,0 +1,50 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site:
http://www.fsf.org.
+ */
+package org.jboss.bpm.api.service.internal;
+
+//$Id$
+
+import org.jboss.bpm.api.client.ProcessEngine;
+import org.jboss.bpm.api.service.DialectHandler;
+
+
+/**
+ * The DialectHandler converts a supported dialect to the ProcessDefinition model.
+ *
+ * @author thomas.diesler(a)jboss.com
+ * @since 18-Jun-2008
+ */
+public abstract class AbstractDialectHandler implements DialectHandler
+{
+ private ProcessEngine engine;
+
+ public ProcessEngine getProcessEngine()
+ {
+ return engine;
+ }
+
+ // Do not expose through the API
+ protected void setProcessEngine(ProcessEngine engine)
+ {
+ this.engine = engine;
+ }
+}
Added:
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/api/service/internal/AbstractDialectHandlerService.java
===================================================================
---
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/api/service/internal/AbstractDialectHandlerService.java
(rev 0)
+++
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/api/service/internal/AbstractDialectHandlerService.java 2008-12-02
15:38:37 UTC (rev 3162)
@@ -0,0 +1,58 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site:
http://www.fsf.org.
+ */
+package org.jboss.bpm.api.service.internal;
+
+//$Id$
+
+import java.net.URI;
+import java.util.Map;
+
+import org.jboss.bpm.api.service.DialectHandler;
+import org.jboss.bpm.api.service.DialectHandlerService;
+
+
+/**
+ * A registry that maps namespaceURI to a {@link DialectHandler}
+ *
+ * @author thomas.diesler(a)jboss.com
+ * @since 18-Jul-2008
+ */
+public abstract class AbstractDialectHandlerService extends AbstractService implements
DialectHandlerService
+{
+ // Maps namespaceURI to a DialectHandler
+ protected Map<URI, DialectHandler> dialectHandlers;
+
+ public DialectHandler getDialectHandler(URI nsURI)
+ {
+ DialectHandler dialectHandler = dialectHandlers.get(nsURI);
+ if (dialectHandler == null)
+ throw new IllegalStateException("No dialect handler registered for: " +
nsURI);
+
+ if (dialectHandler instanceof AbstractDialectHandler)
+ {
+ AbstractDialectHandler absHandler = (AbstractDialectHandler)dialectHandler;
+ absHandler.setProcessEngine(getProcessEngine());
+ }
+
+ return dialectHandler;
+ }
+}
Property changes on:
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/api/service/internal/AbstractDialectHandlerService.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Added:
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/api/service/internal/AbstractIdentityService.java
===================================================================
---
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/api/service/internal/AbstractIdentityService.java
(rev 0)
+++
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/api/service/internal/AbstractIdentityService.java 2008-12-02
15:38:37 UTC (rev 3162)
@@ -0,0 +1,40 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site:
http://www.fsf.org.
+ */
+package org.jboss.bpm.api.service.internal;
+
+// $Id$
+
+import org.jboss.bpm.api.service.IdentityService;
+
+/**
+ * The IdentityService manages identities
+ *
+ * @author thomas.diesler(a)jboss.com
+ * @since 28-Nov-2008
+ */
+public abstract class AbstractIdentityService extends AbstractService implements
IdentityService
+{
+ // Hide public constructor
+ protected AbstractIdentityService()
+ {
+ }
+}
Property changes on:
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/api/service/internal/AbstractIdentityService.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Added:
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/api/service/internal/AbstractProcessDefinitionService.java
===================================================================
---
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/api/service/internal/AbstractProcessDefinitionService.java
(rev 0)
+++
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/api/service/internal/AbstractProcessDefinitionService.java 2008-12-02
15:38:37 UTC (rev 3162)
@@ -0,0 +1,108 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site:
http://www.fsf.org.
+ */
+package org.jboss.bpm.api.service.internal;
+
+//$Id$
+
+import java.io.ByteArrayInputStream;
+import java.io.IOException;
+import java.io.InputStream;
+import java.net.URI;
+import java.net.URL;
+
+import javax.xml.parsers.DocumentBuilder;
+import javax.xml.parsers.DocumentBuilderFactory;
+
+import org.jboss.bpm.api.model.ProcessDefinition;
+import org.jboss.bpm.api.service.DialectHandler;
+import org.jboss.bpm.api.service.DialectHandlerService;
+import org.jboss.bpm.api.service.ProcessDefinitionService;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.w3c.dom.Document;
+import org.w3c.dom.Element;
+
+/**
+ * The ProcessDefinitionService is the entry point to create, find and otherwise manage
process definitions.
+ *
+ * @author thomas.diesler(a)jboss.com
+ * @since 25-Sep-2008
+ */
+public abstract class AbstractProcessDefinitionService extends AbstractService implements
ProcessDefinitionService
+{
+ // Provide logging
+ final static Logger log =
LoggerFactory.getLogger(AbstractProcessDefinitionService.class);
+
+ // Hide public constructor
+ protected AbstractProcessDefinitionService()
+ {
+ }
+
+ @Override
+ public final ProcessDefinition parseProcessDefinition(String pXML)
+ {
+ URI nsURI = getNamespaceURI(new ByteArrayInputStream(pXML.getBytes()));
+ DialectHandlerService dhService =
getProcessEngine().getService(DialectHandlerService.class);
+ DialectHandler dialectHandler = dhService.getDialectHandler(nsURI);
+ if (dialectHandler == null)
+ throw new IllegalStateException("Cannot obtain DialectHandler for: " +
nsURI);
+
+ ProcessDefinition procDef = dialectHandler.parseProcessDefinition(pXML);
+ return procDef;
+ }
+
+ @Override
+ public final ProcessDefinition parseProcessDefinition(URL pURL) throws IOException
+ {
+ URI nsURI = getNamespaceURI(pURL.openStream());
+ DialectHandlerService dhService =
getProcessEngine().getService(DialectHandlerService.class);
+ DialectHandler dialectHandler = dhService.getDialectHandler(nsURI);
+ if (dialectHandler == null)
+ throw new IllegalStateException("Cannot obtain DialectHandler for: " +
nsURI);
+
+ ProcessDefinition procDef = dialectHandler.parseProcessDefinition(pURL);
+ return procDef;
+ }
+
+ private URI getNamespaceURI(InputStream procXML)
+ {
+ DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
+ dbf.setNamespaceAware(true);
+ Document doc;
+ try
+ {
+ DocumentBuilder db = dbf.newDocumentBuilder();
+ doc = db.parse(procXML);
+ }
+ catch (Exception ex)
+ {
+ throw new IllegalStateException("Cannot parse process descriptor", ex);
+ }
+
+ Element root = doc.getDocumentElement();
+ String nsURI = root.getNamespaceURI();
+ if (nsURI == null)
+ throw new IllegalStateException("Cannot get namespace URI from root
element");
+
+ return URI.create(nsURI);
+ }
+}
\ No newline at end of file
Property changes on:
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/api/service/internal/AbstractProcessDefinitionService.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Added:
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/api/service/internal/AbstractProcessService.java
===================================================================
---
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/api/service/internal/AbstractProcessService.java
(rev 0)
+++
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/api/service/internal/AbstractProcessService.java 2008-12-02
15:38:37 UTC (rev 3162)
@@ -0,0 +1,71 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site:
http://www.fsf.org.
+ */
+package org.jboss.bpm.api.service.internal;
+
+//$Id$
+
+import java.util.Set;
+
+import javax.management.ObjectName;
+
+import org.jboss.bpm.api.model.Process;
+import org.jboss.bpm.api.model.Process.ProcessStatus;
+import org.jboss.bpm.api.service.ProcessService;
+
+/**
+ * The ProcessService is the entry point to create, find and otherwise manage processes.
+ *
+ * @author thomas.diesler(a)jboss.com
+ * @since 25-Sep-2008
+ */
+public abstract class AbstractProcessService extends AbstractService implements
ProcessService
+{
+ // Hide public constructor
+ protected AbstractProcessService()
+ {
+ }
+
+ /* (non-Javadoc)
+ * @see
org.jboss.bpm.api.service.internal.ProcessService#registerProcess(org.jboss.bpm.api.model.Process)
+ */
+ public abstract ObjectName registerProcess(Process proc);
+
+ /* (non-Javadoc)
+ * @see
org.jboss.bpm.api.service.internal.ProcessService#unregisterProcess(javax.management.ObjectName)
+ */
+ public abstract boolean unregisterProcess(ObjectName procID);
+
+ /* (non-Javadoc)
+ * @see
org.jboss.bpm.api.service.internal.ProcessService#getProcess(javax.management.ObjectName)
+ */
+ public abstract Process getProcess(ObjectName procID);
+
+ /* (non-Javadoc)
+ * @see org.jboss.bpm.api.service.internal.ProcessService#getProcesses()
+ */
+ public abstract Set<ObjectName> getProcesses();
+
+ /* (non-Javadoc)
+ * @see
org.jboss.bpm.api.service.internal.ProcessService#getProcesses(javax.management.ObjectName,
org.jboss.bpm.api.model.Process.ProcessStatus)
+ */
+ public abstract Set<ObjectName> getProcesses(ObjectName procDefID, ProcessStatus
status);
+}
\ No newline at end of file
Property changes on:
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/api/service/internal/AbstractProcessService.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Copied:
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/api/service/internal/AbstractService.java
(from rev 3150,
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/api/service/AbstractService.java)
===================================================================
---
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/api/service/internal/AbstractService.java
(rev 0)
+++
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/api/service/internal/AbstractService.java 2008-12-02
15:38:37 UTC (rev 3162)
@@ -0,0 +1,49 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site:
http://www.fsf.org.
+ */
+package org.jboss.bpm.api.service.internal;
+
+// $Id$
+
+import org.jboss.bpm.api.client.ProcessEngine;
+import org.jboss.bpm.api.service.Service;
+
+/**
+ * An abstract Service that gives access to the ProcessEngine
+ *
+ * @author thomas.diesler(a)jboss.com
+ * @since 18-Jun-2008
+ */
+public class AbstractService implements Service
+{
+ private ProcessEngine engine;
+
+ public ProcessEngine getProcessEngine()
+ {
+ return engine;
+ }
+
+ // Do not expose through the API
+ protected void setProcessEngine(ProcessEngine engine)
+ {
+ this.engine = engine;
+ }
+}
Added:
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/api/service/internal/AbstractTaskService.java
===================================================================
---
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/api/service/internal/AbstractTaskService.java
(rev 0)
+++
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/api/service/internal/AbstractTaskService.java 2008-12-02
15:38:37 UTC (rev 3162)
@@ -0,0 +1,40 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site:
http://www.fsf.org.
+ */
+package org.jboss.bpm.api.service.internal;
+
+import org.jboss.bpm.api.service.TaskService;
+
+// $Id$
+
+/**
+ * The TaskService manages Tasks.
+ *
+ * @author thomas.diesler(a)jboss.com
+ * @since 28-Nov-2008
+ */
+public abstract class AbstractTaskService extends AbstractService implements TaskService
+{
+ // Hide public constructor
+ protected AbstractTaskService()
+ {
+ }
+}
Property changes on:
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/api/service/internal/AbstractTaskService.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Deleted:
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/incubator/client/Deployment.java
===================================================================
---
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/incubator/client/Deployment.java 2008-12-02
10:16:43 UTC (rev 3161)
+++
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/incubator/client/Deployment.java 2008-12-02
15:38:37 UTC (rev 3162)
@@ -1,126 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2005, JBoss Inc., and individual contributors as indicated
- * by the @authors tag. See the copyright.txt in the distribution for a
- * full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site:
http://www.fsf.org.
- */
-package org.jboss.bpm.incubator.client;
-
-import java.io.BufferedReader;
-import java.io.ByteArrayInputStream;
-import java.io.IOException;
-import java.io.InputStreamReader;
-import java.io.Serializable;
-import java.net.URI;
-import java.net.URL;
-
-import javax.xml.parsers.DocumentBuilder;
-import javax.xml.parsers.DocumentBuilderFactory;
-
-import org.jboss.bpm.api.client.ProcessEngine;
-import org.jboss.bpm.api.model.ProcessDefinition;
-import org.jboss.bpm.api.service.DialectHandler;
-import org.jboss.bpm.api.service.DialectHandlerService;
-import org.jboss.bpm.api.service.ProcessService;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-
-/**
- * A deployment, containing all information to create a process that will be deployed to
the {@link ProcessService}
- *
- * @author Tom Baeyens
- * @author thomas.diesler(a)jboss.com
- * @since 25-Sep-2008
- */
-public class Deployment implements Serializable
-{
- private static final long serialVersionUID = 1L;
-
- private String procXML;
- private ProcessDefinition process;
-
- public Deployment(String procXML)
- {
- if (procXML == null)
- throw new IllegalArgumentException("Null process definition");
-
- this.procXML = procXML;
- }
-
- public Deployment(URL procURL) throws IOException
- {
- if (procURL == null)
- throw new IllegalArgumentException("Null process definition");
-
- StringBuilder strBuilder = new StringBuilder();
- BufferedReader br = new BufferedReader(new InputStreamReader(procURL.openStream()));
- String line = br.readLine();
- while (line != null)
- {
- strBuilder.append(line);
- line = br.readLine();
- }
- procXML = strBuilder.toString();
- }
-
- public Deployment(ProcessDefinition procDef)
- {
- this.process = procDef;
- }
-
- public ProcessDefinition getProcessDefinition(ProcessEngine engine)
- {
- if (process == null)
- {
- DialectHandlerService dhService = engine.getService(DialectHandlerService.class);
- if (dhService == null)
- throw new IllegalStateException("DialectHandlerService not
registered");
-
- URI nsURI = getNamespaceURI();
- DialectHandler dialectHandler = dhService.getDialectHandler(nsURI);
- if (dialectHandler == null)
- throw new IllegalStateException("Cannot obtain DialectHandler for: " +
nsURI);
-
- process = dialectHandler.parseProcessDefinition(procXML);
- }
- return process;
- }
-
- private URI getNamespaceURI()
- {
- DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
- dbf.setNamespaceAware(true);
- Document doc;
- try
- {
- DocumentBuilder db = dbf.newDocumentBuilder();
- doc = db.parse(new ByteArrayInputStream(procXML.getBytes()));
- }
- catch (Exception ex)
- {
- throw new IllegalStateException("Cannot parse process descriptor", ex);
- }
-
- Element root = doc.getDocumentElement();
- String nsURI = root.getNamespaceURI();
- if (nsURI == null)
- throw new IllegalStateException("Cannot get namespace URI from root
element");
-
- return URI.create(nsURI);
- }
-}
Deleted:
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/incubator/service/DeploymentService.java
===================================================================
---
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/incubator/service/DeploymentService.java 2008-12-02
10:16:43 UTC (rev 3161)
+++
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/incubator/service/DeploymentService.java 2008-12-02
15:38:37 UTC (rev 3162)
@@ -1,51 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2005, JBoss Inc., and individual contributors as indicated
- * by the @authors tag. See the copyright.txt in the distribution for a
- * full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site:
http://www.fsf.org.
- */
-package org.jboss.bpm.incubator.service;
-
-//$Id$
-
-import javax.management.ObjectName;
-
-import org.jboss.bpm.api.service.Service;
-import org.jboss.bpm.incubator.client.Deployment;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-/**
- * The marker interface for all Services
- *
- * @author thomas.diesler(a)jboss.com
- * @since 25-Sep-2008
- */
-public abstract class DeploymentService implements Service
-{
- // Provide logging
- final static Logger log = LoggerFactory.getLogger(DeploymentService.class);
-
- /**
- * Deploy a new process to the process service.
- */
- ObjectName deploy(Deployment deployment)
- {
- return null;
- }
-}
\ No newline at end of file
Modified:
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/incubator/service/MessageBuilderService.java
===================================================================
---
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/incubator/service/MessageBuilderService.java 2008-12-02
10:16:43 UTC (rev 3161)
+++
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/incubator/service/MessageBuilderService.java 2008-12-02
15:38:37 UTC (rev 3162)
@@ -25,7 +25,7 @@
import org.jboss.bpm.api.client.Configuration;
import org.jboss.bpm.api.client.ProcessEngine;
-import org.jboss.bpm.api.service.AbstractService;
+import org.jboss.bpm.api.service.internal.AbstractService;
import org.jboss.bpm.incubator.model.Message;
import org.jboss.bpm.incubator.model.builder.MessageBuilder;
Modified:
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/incubator/service/MessageService.java
===================================================================
---
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/incubator/service/MessageService.java 2008-12-02
10:16:43 UTC (rev 3161)
+++
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/incubator/service/MessageService.java 2008-12-02
15:38:37 UTC (rev 3162)
@@ -37,8 +37,9 @@
import org.jboss.bpm.api.model.Node;
import org.jboss.bpm.api.model.Process;
import org.jboss.bpm.api.model.Task;
-import org.jboss.bpm.api.service.AbstractService;
import org.jboss.bpm.api.service.ProcessService;
+import org.jboss.bpm.api.service.internal.AbstractProcessService;
+import org.jboss.bpm.api.service.internal.AbstractService;
import org.jboss.bpm.incubator.client.MessageListener;
import org.jboss.bpm.incubator.model.Message;
import org.jboss.bpm.incubator.model.Participant;
Copied:
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/incubator/service/PersistenceService.java
(from rev 3150,
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/api/service/PersistenceService.java)
===================================================================
---
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/incubator/service/PersistenceService.java
(rev 0)
+++
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/incubator/service/PersistenceService.java 2008-12-02
15:38:37 UTC (rev 3162)
@@ -0,0 +1,86 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site:
http://www.fsf.org.
+ */
+package org.jboss.bpm.incubator.service;
+
+// $Id$
+
+import javax.management.ObjectName;
+
+import org.hibernate.Session;
+import org.jboss.bpm.api.model.Node;
+import org.jboss.bpm.api.model.Process;
+import org.jboss.bpm.api.model.ProcessDefinition;
+import org.jboss.bpm.api.service.internal.AbstractService;
+
+/**
+ * The persistence service.
+ *
+ * @author thomas.diesler(a)jboss.com
+ * @since 17-Sep-2008
+ */
+public abstract class PersistenceService extends AbstractService
+{
+ /**
+ * Create a new persistence session
+ */
+ public abstract Session createSession();
+
+ /**
+ * Save the ProcessDefinition to persistent storage
+ */
+ public abstract ObjectName saveProcessDefinition(ProcessDefinition procDef);
+
+ /**
+ * Load the ProcessDefinition from persistent storage
+ */
+ public abstract ProcessDefinition loadProcessDefinition(ObjectName procDefID);
+
+ /**
+ * Delete the ProcessDefinition from persistent storage
+ */
+ public abstract void deleteProcessDefinition(ProcessDefinition procDef);
+
+ /**
+ * Save the Process to persistent storage
+ */
+ public abstract ObjectName saveProcess(Process proc);
+
+ /**
+ * Load the Process from persistent storage
+ */
+ public abstract Process loadProcess(ObjectName procID);
+
+ /**
+ * Delete the Process from persistent storage
+ */
+ public abstract void deleteProcess(Process proc);
+
+ /**
+ * Save the Node to persistent storage
+ */
+ public abstract ObjectName saveNode(Session session, Node node);
+
+ /**
+ * Load the Node from persistent storage
+ */
+ public abstract <T extends Node> T loadNode(Session session, Class<T>
clazz, ObjectName nodeID);
+}
\ No newline at end of file
Modified:
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/incubator/service/SignalBuilderService.java
===================================================================
---
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/incubator/service/SignalBuilderService.java 2008-12-02
10:16:43 UTC (rev 3161)
+++
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/incubator/service/SignalBuilderService.java 2008-12-02
15:38:37 UTC (rev 3162)
@@ -25,7 +25,7 @@
import org.jboss.bpm.api.client.Configuration;
import org.jboss.bpm.api.client.ProcessEngine;
-import org.jboss.bpm.api.service.AbstractService;
+import org.jboss.bpm.api.service.internal.AbstractService;
import org.jboss.bpm.incubator.model.Signal;
import org.jboss.bpm.incubator.model.builder.SignalBuilder;
Modified:
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/incubator/service/SignalService.java
===================================================================
---
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/incubator/service/SignalService.java 2008-12-02
10:16:43 UTC (rev 3161)
+++
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/incubator/service/SignalService.java 2008-12-02
15:38:37 UTC (rev 3162)
@@ -29,7 +29,7 @@
import org.jboss.bpm.api.client.Configuration;
import org.jboss.bpm.api.client.ProcessEngine;
-import org.jboss.bpm.api.service.AbstractService;
+import org.jboss.bpm.api.service.internal.AbstractService;
import org.jboss.bpm.incubator.client.SignalListener;
import org.jboss.bpm.incubator.model.Signal;
import org.slf4j.Logger;
Modified:
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/incubator/service/ThreadingService.java
===================================================================
---
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/incubator/service/ThreadingService.java 2008-12-02
10:16:43 UTC (rev 3161)
+++
projects/spec/trunk/modules/api/src/main/java/org/jboss/bpm/incubator/service/ThreadingService.java 2008-12-02
15:38:37 UTC (rev 3162)
@@ -30,7 +30,7 @@
import org.jboss.bpm.api.model.StartEvent;
import org.jboss.bpm.api.model.Process.ProcessStatus;
import org.jboss.bpm.api.runtime.Attachments;
-import org.jboss.bpm.api.service.AbstractService;
+import org.jboss.bpm.api.service.internal.AbstractService;
/**
* The ThreadingService executes processes
Modified:
projects/spec/trunk/modules/cts/src/test/java/org/jboss/bpm/test/cts/gateway/exclusive/ExclusiveGatewaySplitMarshallerTest.java
===================================================================
---
projects/spec/trunk/modules/cts/src/test/java/org/jboss/bpm/test/cts/gateway/exclusive/ExclusiveGatewaySplitMarshallerTest.java 2008-12-02
10:16:43 UTC (rev 3161)
+++
projects/spec/trunk/modules/cts/src/test/java/org/jboss/bpm/test/cts/gateway/exclusive/ExclusiveGatewaySplitMarshallerTest.java 2008-12-02
15:38:37 UTC (rev 3162)
@@ -27,6 +27,7 @@
import org.jboss.bpm.api.model.ProcessDefinition;
import org.jboss.bpm.api.service.ProcessDefinitionService;
+import org.jboss.bpm.api.service.internal.AbstractProcessDefinitionService;
/**
Modified:
projects/spec/trunk/modules/cts/src/test/java/org/jboss/bpm/test/cts/service/process/ProcessDefinitionServiceTest.java
===================================================================
---
projects/spec/trunk/modules/cts/src/test/java/org/jboss/bpm/test/cts/service/process/ProcessDefinitionServiceTest.java 2008-12-02
10:16:43 UTC (rev 3161)
+++
projects/spec/trunk/modules/cts/src/test/java/org/jboss/bpm/test/cts/service/process/ProcessDefinitionServiceTest.java 2008-12-02
15:38:37 UTC (rev 3162)
@@ -32,6 +32,8 @@
import org.jboss.bpm.api.model.ProcessDefinition;
import org.jboss.bpm.api.service.ProcessDefinitionService;
import org.jboss.bpm.api.service.ProcessService;
+import org.jboss.bpm.api.service.internal.AbstractProcessDefinitionService;
+import org.jboss.bpm.api.service.internal.AbstractProcessService;
import org.jboss.bpm.api.test.CTSTestCase;
import org.jboss.bpm.api.test.ProcessCatalog;
@@ -79,9 +81,8 @@
ProcessEngine engine = procDef.getProcessEngine();
ProcessDefinitionService procDefService =
engine.getService(ProcessDefinitionService.class);
- ObjectName procDefID = procDefService.registerProcessDefinition(procDef);
- assertSame(procDef, procDefService.getProcessDefinition(procDefID));
- assertEquals(procDefID, procDef.getKey());
+ procDef = procDefService.registerProcessDefinition(procDef);
+ assertNotNull("Registered ProcessDefinition not null", procDef);
boolean success = procDefService.unregisterProcessDefinition(procDef.getKey());
assertTrue("ProcessDefinition unregistered", success);
Modified:
projects/spec/trunk/modules/cts/src/test/java/org/jboss/bpm/test/cts/service/process/ProcessServiceTest.java
===================================================================
---
projects/spec/trunk/modules/cts/src/test/java/org/jboss/bpm/test/cts/service/process/ProcessServiceTest.java 2008-12-02
10:16:43 UTC (rev 3161)
+++
projects/spec/trunk/modules/cts/src/test/java/org/jboss/bpm/test/cts/service/process/ProcessServiceTest.java 2008-12-02
15:38:37 UTC (rev 3162)
@@ -28,6 +28,7 @@
import org.jboss.bpm.api.model.Process;
import org.jboss.bpm.api.model.ProcessDefinition;
import org.jboss.bpm.api.model.builder.ProcessBuilder;
+import org.jboss.bpm.api.runtime.Token;
import org.jboss.bpm.api.service.ProcessBuilderService;
import org.jboss.bpm.api.service.ProcessDefinitionService;
import org.jboss.bpm.api.service.ProcessService;
@@ -67,6 +68,29 @@
assertNull("ProcessDefinition unregistered",
procDefService.getProcessDefinition(procDef.getKey()));
}
+ public void testStartProcess() throws Exception
+ {
+ ProcessDefinitionService procDefService =
getProcessEngine().getService(ProcessDefinitionService.class);
+ ProcessService procService = getProcessEngine().getService(ProcessService.class);
+
+ ProcessDefinition procDef = getProcessDefinition();
+ Process proc = procDef.newInstance();
+
+ Token token = proc.startProcess();
+ assertNotNull("Token not null", token);
+
+ ObjectName procID = proc.getKey();
+ assertNotNull("Process registered", procService.getProcess(procID));
+
+ // Unregister the process
+ procService.unregisterProcess(procID);
+ assertNull("Process unregistered", procService.getProcess(procID));
+ assertNotNull("ProcessDefinition still registered",
procDefService.getProcessDefinition(procDef.getKey()));
+
+ procDefService.unregisterProcessDefinition(procDef.getKey());
+ assertNull("ProcessDefinition unregistered",
procDefService.getProcessDefinition(procDef.getKey()));
+ }
+
private ProcessDefinition getProcessDefinition()
{
ProcessBuilderService pbService =
getProcessEngine().getService(ProcessBuilderService.class);
Modified:
projects/spec/trunk/modules/cts/src/test/java/org/jboss/bpm/test/cts/task/waitstate/WaitStateMarshallerTest.java
===================================================================
---
projects/spec/trunk/modules/cts/src/test/java/org/jboss/bpm/test/cts/task/waitstate/WaitStateMarshallerTest.java 2008-12-02
10:16:43 UTC (rev 3161)
+++
projects/spec/trunk/modules/cts/src/test/java/org/jboss/bpm/test/cts/task/waitstate/WaitStateMarshallerTest.java 2008-12-02
15:38:37 UTC (rev 3162)
@@ -25,6 +25,7 @@
import org.jboss.bpm.api.model.ProcessDefinition;
import org.jboss.bpm.api.service.ProcessDefinitionService;
+import org.jboss.bpm.api.service.internal.AbstractProcessDefinitionService;
// $Id$
Modified:
projects/spec/trunk/modules/cts/src/test/java/org/jboss/bpm/test/incubator/startevent/StartEventSignalTest.java
===================================================================
---
projects/spec/trunk/modules/cts/src/test/java/org/jboss/bpm/test/incubator/startevent/StartEventSignalTest.java 2008-12-02
10:16:43 UTC (rev 3161)
+++
projects/spec/trunk/modules/cts/src/test/java/org/jboss/bpm/test/incubator/startevent/StartEventSignalTest.java 2008-12-02
15:38:37 UTC (rev 3162)
@@ -34,6 +34,8 @@
import org.jboss.bpm.api.service.ProcessBuilderService;
import org.jboss.bpm.api.service.ProcessDefinitionService;
import org.jboss.bpm.api.service.ProcessService;
+import org.jboss.bpm.api.service.internal.AbstractProcessDefinitionService;
+import org.jboss.bpm.api.service.internal.AbstractProcessService;
import org.jboss.bpm.api.test.CTSTestCase;
import org.jboss.bpm.incubator.client.ProcessExt;
import org.jboss.bpm.incubator.client.SignalListener;
Modified:
projects/spec/trunk/modules/cts/src/test/java/org/jboss/bpm/test/incubator/task/receive/ReceiveTaskTest.java
===================================================================
---
projects/spec/trunk/modules/cts/src/test/java/org/jboss/bpm/test/incubator/task/receive/ReceiveTaskTest.java 2008-12-02
10:16:43 UTC (rev 3161)
+++
projects/spec/trunk/modules/cts/src/test/java/org/jboss/bpm/test/incubator/task/receive/ReceiveTaskTest.java 2008-12-02
15:38:37 UTC (rev 3162)
@@ -34,6 +34,8 @@
import org.jboss.bpm.api.service.ProcessBuilderService;
import org.jboss.bpm.api.service.ProcessDefinitionService;
import org.jboss.bpm.api.service.ProcessService;
+import org.jboss.bpm.api.service.internal.AbstractProcessDefinitionService;
+import org.jboss.bpm.api.service.internal.AbstractProcessService;
import org.jboss.bpm.api.test.CTSTestCase;
import org.jboss.bpm.incubator.client.ProcessExt;
import org.jboss.bpm.incubator.client.SignalListener;
Modified:
projects/spec/trunk/modules/cts/src/test/java/org/jboss/bpm/test/incubator/task/user/UserTaskTest.java
===================================================================
---
projects/spec/trunk/modules/cts/src/test/java/org/jboss/bpm/test/incubator/task/user/UserTaskTest.java 2008-12-02
10:16:43 UTC (rev 3161)
+++
projects/spec/trunk/modules/cts/src/test/java/org/jboss/bpm/test/incubator/task/user/UserTaskTest.java 2008-12-02
15:38:37 UTC (rev 3162)
@@ -36,6 +36,7 @@
import org.jboss.bpm.api.runtime.BasicAttachments;
import org.jboss.bpm.api.service.ProcessBuilderService;
import org.jboss.bpm.api.service.ProcessService;
+import org.jboss.bpm.api.service.internal.AbstractProcessService;
import org.jboss.bpm.api.test.CTSTestCase;
import org.jboss.bpm.incubator.client.MessageListener;
import org.jboss.bpm.incubator.client.ProcessExt;
Modified:
projects/spec/trunk/modules/cts/src/test/java/org/jboss/bpm/test/incubator/transaction/TxRequiredMarshallerTest.java
===================================================================
---
projects/spec/trunk/modules/cts/src/test/java/org/jboss/bpm/test/incubator/transaction/TxRequiredMarshallerTest.java 2008-12-02
10:16:43 UTC (rev 3161)
+++
projects/spec/trunk/modules/cts/src/test/java/org/jboss/bpm/test/incubator/transaction/TxRequiredMarshallerTest.java 2008-12-02
15:38:37 UTC (rev 3162)
@@ -27,6 +27,7 @@
import org.jboss.bpm.api.model.ProcessDefinition;
import org.jboss.bpm.api.service.ProcessDefinitionService;
+import org.jboss.bpm.api.service.internal.AbstractProcessDefinitionService;
/**
* Test two tasks with Tx attribute REQUIRED
Modified:
projects/spec/trunk/modules/cts/src/test/java/org/jboss/bpm/test/pattern/control/sequence/SequencePersistenceTest.java
===================================================================
---
projects/spec/trunk/modules/cts/src/test/java/org/jboss/bpm/test/pattern/control/sequence/SequencePersistenceTest.java 2008-12-02
10:16:43 UTC (rev 3161)
+++
projects/spec/trunk/modules/cts/src/test/java/org/jboss/bpm/test/pattern/control/sequence/SequencePersistenceTest.java 2008-12-02
15:38:37 UTC (rev 3162)
@@ -28,7 +28,7 @@
import javax.management.ObjectName;
import org.jboss.bpm.api.model.ProcessDefinition;
-import org.jboss.bpm.api.service.PersistenceService;
+import org.jboss.bpm.incubator.service.PersistenceService;
/**
* Test the basic execution sequence
Modified:
projects/spec/trunk/modules/dialects/api10/src/main/java/org/jboss/bpm/dialect/api10/DialectHandlerImpl.java
===================================================================
---
projects/spec/trunk/modules/dialects/api10/src/main/java/org/jboss/bpm/dialect/api10/DialectHandlerImpl.java 2008-12-02
10:16:43 UTC (rev 3161)
+++
projects/spec/trunk/modules/dialects/api10/src/main/java/org/jboss/bpm/dialect/api10/DialectHandlerImpl.java 2008-12-02
15:38:37 UTC (rev 3162)
@@ -34,7 +34,7 @@
import org.jboss.bpm.api.InvalidProcessException;
import org.jboss.bpm.api.model.ProcessDefinition;
-import org.jboss.bpm.api.service.AbstractDialectHandler;
+import org.jboss.bpm.api.service.internal.AbstractDialectHandler;
/**
* The DialectHandler converts a supported dialect to the internal Process model.
Modified:
projects/spec/trunk/modules/dialects/jpdl32/src/main/java/org/jboss/bpm/dialect/jpdl32/DialectHandlerImpl.java
===================================================================
---
projects/spec/trunk/modules/dialects/jpdl32/src/main/java/org/jboss/bpm/dialect/jpdl32/DialectHandlerImpl.java 2008-12-02
10:16:43 UTC (rev 3161)
+++
projects/spec/trunk/modules/dialects/jpdl32/src/main/java/org/jboss/bpm/dialect/jpdl32/DialectHandlerImpl.java 2008-12-02
15:38:37 UTC (rev 3162)
@@ -35,7 +35,7 @@
import org.jboss.bpm.api.InvalidProcessException;
import org.jboss.bpm.api.NotImplementedException;
import org.jboss.bpm.api.model.ProcessDefinition;
-import org.jboss.bpm.api.service.AbstractDialectHandler;
+import org.jboss.bpm.api.service.internal.AbstractDialectHandler;
import org.jboss.bpm.dialect.jpdl32.model.JPDL32ProcessDefinition;
Modified:
projects/spec/trunk/modules/dialects/stp/src/main/java/org/jboss/bpm/dialect/stp/DialectHandlerImpl.java
===================================================================
---
projects/spec/trunk/modules/dialects/stp/src/main/java/org/jboss/bpm/dialect/stp/DialectHandlerImpl.java 2008-12-02
10:16:43 UTC (rev 3161)
+++
projects/spec/trunk/modules/dialects/stp/src/main/java/org/jboss/bpm/dialect/stp/DialectHandlerImpl.java 2008-12-02
15:38:37 UTC (rev 3162)
@@ -34,7 +34,7 @@
import org.jboss.bpm.api.InvalidProcessException;
import org.jboss.bpm.api.NotImplementedException;
import org.jboss.bpm.api.model.ProcessDefinition;
-import org.jboss.bpm.api.service.AbstractDialectHandler;
+import org.jboss.bpm.api.service.internal.AbstractDialectHandler;
/**
* The DialectHandler converts a supported dialect to the internal Process model.
Modified:
projects/spec/trunk/modules/dialects/xpdl21/src/main/java/org/jboss/bpm/dialect/xpdl21/DialectHandlerImpl.java
===================================================================
---
projects/spec/trunk/modules/dialects/xpdl21/src/main/java/org/jboss/bpm/dialect/xpdl21/DialectHandlerImpl.java 2008-12-02
10:16:43 UTC (rev 3161)
+++
projects/spec/trunk/modules/dialects/xpdl21/src/main/java/org/jboss/bpm/dialect/xpdl21/DialectHandlerImpl.java 2008-12-02
15:38:37 UTC (rev 3162)
@@ -35,7 +35,7 @@
import org.jboss.bpm.api.InvalidProcessException;
import org.jboss.bpm.api.NotImplementedException;
import org.jboss.bpm.api.model.ProcessDefinition;
-import org.jboss.bpm.api.service.AbstractDialectHandler;
+import org.jboss.bpm.api.service.internal.AbstractDialectHandler;
import org.jboss.bpm.dialect.xpdl21.model.XPDLWorkflowProcess;
/**
Modified:
projects/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/ProcessImpl.java
===================================================================
---
projects/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/ProcessImpl.java 2008-12-02
10:16:43 UTC (rev 3161)
+++
projects/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/ProcessImpl.java 2008-12-02
15:38:37 UTC (rev 3162)
@@ -53,6 +53,7 @@
import org.jboss.bpm.api.runtime.Token;
import org.jboss.bpm.api.runtime.Token.TokenStatus;
import org.jboss.bpm.api.service.ProcessService;
+import org.jboss.bpm.api.service.internal.AbstractProcessService;
import org.jboss.bpm.incubator.client.ProcessExt;
import org.jboss.bpm.incubator.model.Assignment;
import org.jboss.bpm.incubator.model.Group;
Modified:
projects/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/runtime/PersistenceSessionInterceptor.java
===================================================================
---
projects/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/runtime/PersistenceSessionInterceptor.java 2008-12-02
10:16:43 UTC (rev 3161)
+++
projects/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/runtime/PersistenceSessionInterceptor.java 2008-12-02
15:38:37 UTC (rev 3162)
@@ -26,7 +26,7 @@
import org.hibernate.Session;
import org.jboss.bpm.api.client.ProcessEngine;
import org.jboss.bpm.api.runtime.Token.TokenStatus;
-import org.jboss.bpm.api.service.PersistenceService;
+import org.jboss.bpm.incubator.service.PersistenceService;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
Modified:
projects/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/runtime/TransactionInterceptor.java
===================================================================
---
projects/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/runtime/TransactionInterceptor.java 2008-12-02
10:16:43 UTC (rev 3161)
+++
projects/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/runtime/TransactionInterceptor.java 2008-12-02
15:38:37 UTC (rev 3162)
@@ -30,11 +30,11 @@
import org.jboss.bpm.api.Constants.TxType;
import org.jboss.bpm.api.client.ProcessEngine;
import org.jboss.bpm.api.model.Node;
-import org.jboss.bpm.api.service.PersistenceService;
import org.jboss.bpm.incubator.model.Group;
import org.jboss.bpm.incubator.model.NodeExt;
import org.jboss.bpm.incubator.model.Property;
import org.jboss.bpm.incubator.model.Group.GroupType;
+import org.jboss.bpm.incubator.service.PersistenceService;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
Modified:
projects/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/service/DialectHandlerServiceImpl.java
===================================================================
---
projects/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/service/DialectHandlerServiceImpl.java 2008-12-02
10:16:43 UTC (rev 3161)
+++
projects/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/service/DialectHandlerServiceImpl.java 2008-12-02
15:38:37 UTC (rev 3162)
@@ -28,7 +28,7 @@
import org.jboss.bpm.api.client.ProcessEngine;
import org.jboss.bpm.api.service.DialectHandler;
-import org.jboss.bpm.api.service.DialectHandlerService;
+import org.jboss.bpm.api.service.internal.AbstractDialectHandlerService;
/**
* A registry that maps namespaceURI to a {@link DialectHandler}
@@ -36,7 +36,7 @@
* @author thomas.diesler(a)jboss.com
* @since 18-Jun-2008
*/
-public class DialectHandlerServiceImpl extends DialectHandlerService implements
MutableService
+public class DialectHandlerServiceImpl extends AbstractDialectHandlerService implements
MutableService
{
@Override
public void setProcessEngine(ProcessEngine engine)
Modified:
projects/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/service/HibernatePersistenceServiceImpl.java
===================================================================
---
projects/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/service/HibernatePersistenceServiceImpl.java 2008-12-02
10:16:43 UTC (rev 3161)
+++
projects/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/service/HibernatePersistenceServiceImpl.java 2008-12-02
15:38:37 UTC (rev 3162)
@@ -40,8 +40,8 @@
import org.jboss.bpm.api.model.Node;
import org.jboss.bpm.api.model.Process;
import org.jboss.bpm.api.model.ProcessDefinition;
-import org.jboss.bpm.api.service.PersistenceService;
import org.jboss.bpm.api.service.Service;
+import org.jboss.bpm.incubator.service.PersistenceService;
import org.jboss.bpm.ri.model.AbstractElementImpl;
import org.jboss.bpm.ri.model.ProcessDefinitionImpl;
import org.jboss.bpm.ri.model.ProcessImpl;
Modified:
projects/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/service/InMemoryPersistenceServiceImpl.java
===================================================================
---
projects/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/service/InMemoryPersistenceServiceImpl.java 2008-12-02
10:16:43 UTC (rev 3161)
+++
projects/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/service/InMemoryPersistenceServiceImpl.java 2008-12-02
15:38:37 UTC (rev 3162)
@@ -34,7 +34,7 @@
import org.jboss.bpm.api.model.Node;
import org.jboss.bpm.api.model.Process;
import org.jboss.bpm.api.model.ProcessDefinition;
-import org.jboss.bpm.api.service.PersistenceService;
+import org.jboss.bpm.incubator.service.PersistenceService;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
Modified:
projects/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/service/ProcessDefinitionServiceImpl.java
===================================================================
---
projects/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/service/ProcessDefinitionServiceImpl.java 2008-12-02
10:16:43 UTC (rev 3161)
+++
projects/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/service/ProcessDefinitionServiceImpl.java 2008-12-02
15:38:37 UTC (rev 3162)
@@ -32,9 +32,10 @@
import org.jboss.bpm.api.client.ProcessEngine;
import org.jboss.bpm.api.model.ProcessDefinition;
-import org.jboss.bpm.api.service.PersistenceService;
-import org.jboss.bpm.api.service.ProcessDefinitionService;
import org.jboss.bpm.api.service.ProcessService;
+import org.jboss.bpm.api.service.internal.AbstractProcessDefinitionService;
+import org.jboss.bpm.api.service.internal.AbstractProcessService;
+import org.jboss.bpm.incubator.service.PersistenceService;
import org.jboss.bpm.ri.model.ProcessDefinitionImpl;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -45,7 +46,7 @@
* @author thomas.diesler(a)jboss.com
* @since 18-Jun-2008
*/
-public class ProcessDefinitionServiceImpl extends ProcessDefinitionService implements
MutableService
+public class ProcessDefinitionServiceImpl extends AbstractProcessDefinitionService
implements MutableService
{
// Provide logging
final static Logger log = LoggerFactory.getLogger(ProcessDefinitionServiceImpl.class);
@@ -72,7 +73,7 @@
}
@Override
- public ObjectName registerProcessDefinition(ProcessDefinition procDef)
+ public ProcessDefinition registerProcessDefinition(ProcessDefinition procDef)
{
if (getProcessDefinition(procDef.getKey()) != null)
throw new IllegalStateException("Process definition already registered: "
+ procDef);
@@ -87,7 +88,7 @@
ProcessDefinitionImpl procDefImpl = (ProcessDefinitionImpl)procDef;
procDefImpl.register(procDef);
- return procDefID;
+ return procDef;
}
@Override
Modified:
projects/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/service/ProcessServiceImpl.java
===================================================================
---
projects/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/service/ProcessServiceImpl.java 2008-12-02
10:16:43 UTC (rev 3161)
+++
projects/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/service/ProcessServiceImpl.java 2008-12-02
15:38:37 UTC (rev 3162)
@@ -37,9 +37,10 @@
import org.jboss.bpm.api.model.Process;
import org.jboss.bpm.api.model.ProcessDefinition;
import org.jboss.bpm.api.model.Process.ProcessStatus;
-import org.jboss.bpm.api.service.PersistenceService;
import org.jboss.bpm.api.service.ProcessDefinitionService;
-import org.jboss.bpm.api.service.ProcessService;
+import org.jboss.bpm.api.service.internal.AbstractProcessDefinitionService;
+import org.jboss.bpm.api.service.internal.AbstractProcessService;
+import org.jboss.bpm.incubator.service.PersistenceService;
import org.jboss.bpm.ri.model.ProcessImpl;
import org.jboss.bpm.ri.runtime.NodeInterceptor;
import org.slf4j.Logger;
@@ -51,7 +52,7 @@
* @author thomas.diesler(a)jboss.com
* @since 18-Jun-2008
*/
-public class ProcessServiceImpl extends ProcessService implements MutableService
+public class ProcessServiceImpl extends AbstractProcessService implements MutableService
{
// Provide logging
final static Logger log = LoggerFactory.getLogger(ProcessServiceImpl.class);
Modified:
projects/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/service/ThreadingServiceImpl.java
===================================================================
---
projects/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/service/ThreadingServiceImpl.java 2008-12-02
10:16:43 UTC (rev 3161)
+++
projects/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/service/ThreadingServiceImpl.java 2008-12-02
15:38:37 UTC (rev 3162)
@@ -38,6 +38,7 @@
import org.jboss.bpm.api.runtime.Attachments;
import org.jboss.bpm.api.runtime.Token;
import org.jboss.bpm.api.service.ProcessService;
+import org.jboss.bpm.api.service.internal.AbstractProcessService;
import org.jboss.bpm.incubator.client.ProcessExt;
import org.jboss.bpm.incubator.model.Assignment;
import org.jboss.bpm.incubator.model.Assignment.AssignTime;
Modified:
projects/spec/trunk/modules/ri/src/test/java/org/jboss/bpm/test/ri/dialect/stp/sequence/SequenceTest.java
===================================================================
---
projects/spec/trunk/modules/ri/src/test/java/org/jboss/bpm/test/ri/dialect/stp/sequence/SequenceTest.java 2008-12-02
10:16:43 UTC (rev 3161)
+++
projects/spec/trunk/modules/ri/src/test/java/org/jboss/bpm/test/ri/dialect/stp/sequence/SequenceTest.java 2008-12-02
15:38:37 UTC (rev 3162)
@@ -27,6 +27,7 @@
import org.jboss.bpm.api.model.ProcessDefinition;
import org.jboss.bpm.api.service.ProcessDefinitionService;
+import org.jboss.bpm.api.service.internal.AbstractProcessDefinitionService;
import org.jboss.bpm.api.test.APITestCase;
/**
Modified:
projects/spec/trunk/modules/ri/src/test/java/org/jboss/bpm/test/ri/service/persistence/NodePersistenceTest.java
===================================================================
---
projects/spec/trunk/modules/ri/src/test/java/org/jboss/bpm/test/ri/service/persistence/NodePersistenceTest.java 2008-12-02
10:16:43 UTC (rev 3161)
+++
projects/spec/trunk/modules/ri/src/test/java/org/jboss/bpm/test/ri/service/persistence/NodePersistenceTest.java 2008-12-02
15:38:37 UTC (rev 3162)
@@ -27,8 +27,8 @@
import org.hibernate.Session;
import org.jboss.bpm.api.model.Node;
-import org.jboss.bpm.api.service.PersistenceService;
import org.jboss.bpm.api.test.CTSTestCase;
+import org.jboss.bpm.incubator.service.PersistenceService;
import org.jboss.bpm.ri.service.HibernatePersistenceServiceImpl;
/**
Modified:
projects/spec/trunk/modules/ri/src/test/java/org/jboss/bpm/test/ri/service/persistence/ProcessDefinitionPersistenceTest.java
===================================================================
---
projects/spec/trunk/modules/ri/src/test/java/org/jboss/bpm/test/ri/service/persistence/ProcessDefinitionPersistenceTest.java 2008-12-02
10:16:43 UTC (rev 3161)
+++
projects/spec/trunk/modules/ri/src/test/java/org/jboss/bpm/test/ri/service/persistence/ProcessDefinitionPersistenceTest.java 2008-12-02
15:38:37 UTC (rev 3162)
@@ -31,9 +31,9 @@
import org.jboss.bpm.api.model.ProcessDefinition;
import org.jboss.bpm.api.model.StartEvent;
import org.jboss.bpm.api.model.Task;
-import org.jboss.bpm.api.service.PersistenceService;
import org.jboss.bpm.api.test.CTSTestCase;
import org.jboss.bpm.api.test.ProcessCatalog;
+import org.jboss.bpm.incubator.service.PersistenceService;
/**
* Test the PersistenceService
Modified:
projects/spec/trunk/modules/ri/src/test/java/org/jboss/bpm/test/ri/service/persistence/ProcessPersistenceTest.java
===================================================================
---
projects/spec/trunk/modules/ri/src/test/java/org/jboss/bpm/test/ri/service/persistence/ProcessPersistenceTest.java 2008-12-02
10:16:43 UTC (rev 3161)
+++
projects/spec/trunk/modules/ri/src/test/java/org/jboss/bpm/test/ri/service/persistence/ProcessPersistenceTest.java 2008-12-02
15:38:37 UTC (rev 3162)
@@ -32,10 +32,11 @@
import org.jboss.bpm.api.model.ProcessDefinition;
import org.jboss.bpm.api.model.StartEvent;
import org.jboss.bpm.api.model.Task;
-import org.jboss.bpm.api.service.PersistenceService;
import org.jboss.bpm.api.service.ProcessDefinitionService;
+import org.jboss.bpm.api.service.internal.AbstractProcessDefinitionService;
import org.jboss.bpm.api.test.CTSTestCase;
import org.jboss.bpm.api.test.ProcessCatalog;
+import org.jboss.bpm.incubator.service.PersistenceService;
/**
* Test the PersistenceService
Modified:
projects/spec/trunk/modules/samples/airticket/server/src/main/java/org/jboss/bpm/samples/airticket/server/AirticketServiceImpl.java
===================================================================
---
projects/spec/trunk/modules/samples/airticket/server/src/main/java/org/jboss/bpm/samples/airticket/server/AirticketServiceImpl.java 2008-12-02
10:16:43 UTC (rev 3161)
+++
projects/spec/trunk/modules/samples/airticket/server/src/main/java/org/jboss/bpm/samples/airticket/server/AirticketServiceImpl.java 2008-12-02
15:38:37 UTC (rev 3162)
@@ -11,6 +11,7 @@
import org.jboss.bpm.api.model.ProcessDefinition;
import org.jboss.bpm.api.model.builder.ObjectNameFactory;
import org.jboss.bpm.api.service.ProcessService;
+import org.jboss.bpm.api.service.internal.AbstractProcessService;
import org.jboss.bpm.incubator.client.MessageListener;
import org.jboss.bpm.incubator.client.ProcessExt;
import org.jboss.bpm.incubator.client.SignalListener;