提交 ad43310b 编写于 作者: B bernd.ruecker

moved activiti-cycle to own maven module

上级 a701114d
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
<classpathentry kind="src" output="target/classes" path="src/main/java"/>
<classpathentry kind="src" output="target/test-classes" path="src/test/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="output" path="target/classes"/>
</classpath>
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
<name>activiti-cycle</name>
<comment></comment>
<projects>
</projects>
<buildSpec>
<buildCommand>
<name>org.eclipse.jdt.core.javabuilder</name>
<arguments>
</arguments>
</buildCommand>
<buildCommand>
<name>org.maven.ide.eclipse.maven2Builder</name>
<arguments>
</arguments>
</buildCommand>
</buildSpec>
<natures>
<nature>org.eclipse.jdt.core.javanature</nature>
<nature>org.maven.ide.eclipse.maven2Nature</nature>
</natures>
</projectDescription>
#Wed Jul 28 18:17:12 CEST 2010
eclipse.preferences.version=1
org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
org.eclipse.jdt.core.compiler.compliance=1.5
org.eclipse.jdt.core.compiler.source=1.5
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<name>Activiti - Cycle</name>
<groupId>org.activiti</groupId>
<artifactId>activiti-cycle</artifactId>
<parent>
<groupId>org.activiti</groupId>
<artifactId>activiti-root</artifactId>
<relativePath>../..</relativePath>
<version>5.0.beta1-SNAPSHOT</version>
</parent>
<dependencies>
<!--
<dependency>
<groupId>org.activiti</groupId>
<artifactId>activiti-pvm</artifactId>
</dependency>
<dependency>
<groupId>org.activiti</groupId>
<artifactId>activiti-engine</artifactId>
</dependency>
-->
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.restlet</groupId>
<artifactId>org.restlet</artifactId>
</dependency>
<dependency>
<groupId>org.restlet</groupId>
<artifactId>org.restlet.ext.json</artifactId>
</dependency>
<dependency>
<groupId>com.noelios.restlet</groupId>
<artifactId>com.noelios.restlet</artifactId>
</dependency>
<dependency>
<groupId>com.noelios.restlet</groupId>
<artifactId>com.noelios.restlet.ext.httpclient</artifactId>
</dependency>
<!-- required by Apache commons httpclient, required by restlet -->
<dependency>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
</dependency>
</dependencies>
<profiles>
<profile>
<id>distro</id>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-source-plugin</artifactId>
<version>2.1.1</version>
<executions>
<execution>
<id>attach-sources</id>
<phase>package</phase>
<goals>
<goal>jar-no-fork</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
</profiles>
<reporting>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<configuration>
<excludePackageNames>org.activiti.impl*,org.activiti.engine.impl*</excludePackageNames>
</configuration>
</plugin>
</plugins>
</reporting>
</project>
......@@ -10,15 +10,11 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.activiti.impl.cycle.connect.api.actions;
package org.activiti.cycle;
import java.util.Map;
import java.util.logging.Logger;
import org.activiti.impl.cycle.connect.api.RepositoryArtifact;
import org.activiti.impl.cycle.connect.api.ArtifactType;
import org.activiti.impl.cycle.connect.api.RepositoryNode;
/**
* The file action defines an action you can execute upon a file / artefact
* normally depending on the {@link ArtifactType}.
......@@ -34,15 +30,26 @@ import org.activiti.impl.cycle.connect.api.RepositoryNode;
*
* @author bernd.ruecker@camunda.com
*/
public abstract class FileAction {
public abstract class ArtifactAction {
private RepositoryArtifact file;
private String status;
protected static Logger log = Logger.getLogger(FileAction.class.getName());
protected static Logger log = Logger.getLogger(ArtifactAction.class.getName());
// gui: standard panel / own url / nothing / modal panel
public abstract FileActionGuiRepresentation getGuiRepresentation();
/**
* The list of options (still under development): *
* <tr>
* <td>DEFAULT_PANE: Something is shown in the default panel in the GUI (e.g.
* a PNG)</td>
* <td>OWN_WINDOW: Something is opened in a own Browser window (e.g. Signavio
* Modeler)</td>
* <td>NONE: The action doesn't need any GUI (e.g. writing something to SVN)</td>
* <td>MODAL_PANEL: The action does need additional parameters from the user</td>
* </tr>
*/
public abstract String getGuiRepresentation();
public abstract String getGuiRepresentationAsString();
......
......@@ -10,12 +10,11 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.activiti.impl.cycle.connect.api;
package org.activiti.cycle;
import java.util.List;
import org.activiti.impl.cycle.connect.RepositoryRegistry;
import org.activiti.impl.cycle.connect.api.actions.FileAction;
import org.activiti.cycle.impl.RepositoryRegistry;
/**
* The file type specifies the type of an artifact, e.g. Signavio model, jpdl process model, text file, word document, ...
......@@ -43,7 +42,7 @@ public class ArtifactType {
this.typeIdentifier = typeIdentifier;
}
public List<Class< ? extends FileAction>> getRegisteredActions() {
public List<Class< ? extends ArtifactAction>> getRegisteredActions() {
return RepositoryRegistry.getActionsForFileType(getTypeIdentifier());
}
......@@ -60,7 +59,7 @@ public class ArtifactType {
}
@Deprecated
public Class< ? extends FileAction> getDefaultAction() {
public Class< ? extends ArtifactAction> getDefaultAction() {
return RepositoryRegistry.getDefaultActionForFileType(getTypeIdentifier());
}
......
......@@ -10,14 +10,12 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.activiti.impl.cycle.connect.api;
package org.activiti.cycle;
import java.util.ArrayList;
import java.util.List;
import java.util.logging.Level;
import org.activiti.impl.cycle.connect.api.actions.FileAction;
/**
* Information about an artifact contained in the repository
* (e.g. a file, signavio model, ...)
......@@ -32,8 +30,8 @@ public class RepositoryArtifact extends RepositoryNode {
// does it have on the content? ...?
private ArtifactType artifactType;
private transient List<FileAction> cachedFileActions;
private transient FileAction cachedDefaultFileAction;
private transient List<ArtifactAction> cachedFileActions;
private transient ArtifactAction cachedDefaultFileAction;
public RepositoryArtifact() {
}
......@@ -64,16 +62,16 @@ public class RepositoryArtifact extends RepositoryNode {
}
}
public List<FileAction> getActions() {
public List<ArtifactAction> getActions() {
if (getFileType() == null) {
return new ArrayList<FileAction>();
return new ArrayList<ArtifactAction>();
}
if (cachedFileActions == null) {
cachedFileActions = new ArrayList<FileAction>();
for (Class< ? extends FileAction> clazz : getRegisteredActionTypes()) {
cachedFileActions = new ArrayList<ArtifactAction>();
for (Class< ? extends ArtifactAction> clazz : getRegisteredActionTypes()) {
try {
FileAction action = clazz.newInstance();
ArtifactAction action = clazz.newInstance();
action.setFile(this);
cachedFileActions.add(action);
......@@ -93,7 +91,7 @@ public class RepositoryArtifact extends RepositoryNode {
}
@Deprecated
public FileAction getDefaultFileAction() {
public ArtifactAction getDefaultFileAction() {
if (cachedDefaultFileAction == null) {
// lazy loading of action definitions if not already done
getActions();
......@@ -106,7 +104,7 @@ public class RepositoryArtifact extends RepositoryNode {
}
@Deprecated
public boolean isDefaultAction(Class< ? extends FileAction> actionType) {
public boolean isDefaultAction(Class< ? extends ArtifactAction> actionType) {
if (artifactType != null && artifactType.getDefaultAction() != null) {
return artifactType.getDefaultAction().equals(actionType);
} else {
......@@ -114,11 +112,11 @@ public class RepositoryArtifact extends RepositoryNode {
}
}
public List<Class< ? extends FileAction>> getRegisteredActionTypes() {
public List<Class< ? extends ArtifactAction>> getRegisteredActionTypes() {
if (artifactType != null) {
return artifactType.getRegisteredActions();
} else {
return new ArrayList<Class< ? extends FileAction>>();
return new ArrayList<Class< ? extends ArtifactAction>>();
}
}
......
......@@ -10,7 +10,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.activiti.impl.cycle.connect.api;
package org.activiti.cycle;
import java.util.List;
......
......@@ -10,7 +10,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.activiti.impl.cycle.connect;
package org.activiti.cycle;
/**
*
......
......@@ -10,7 +10,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.activiti.impl.cycle.connect.api;
package org.activiti.cycle;
import java.util.ArrayList;
import java.util.List;
......
......@@ -10,14 +10,12 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.activiti.impl.cycle.connect.api;
package org.activiti.cycle;
import java.io.Serializable;
import java.util.Map;
import java.util.logging.Logger;
import org.activiti.impl.cycle.connect.RepositoryException;
/**
* Superclass for the composite of folders and files. Holds a reference to the
* API used to query sub folders and files in order to enable lazy loading of
......
......@@ -10,7 +10,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.activiti.impl.cycle.connect;
package org.activiti.cycle;
/**
*
......
......@@ -10,7 +10,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.activiti.impl.cycle.connect;
package org.activiti.cycle.impl;
import java.util.ArrayList;
import java.util.Collection;
......@@ -18,9 +18,10 @@ import java.util.HashMap;
import java.util.List;
import java.util.Map;
import org.activiti.impl.cycle.connect.api.ArtifactType;
import org.activiti.impl.cycle.connect.api.ContentRepresentationProvider;
import org.activiti.impl.cycle.connect.api.actions.FileAction;
import org.activiti.cycle.ArtifactAction;
import org.activiti.cycle.ArtifactType;
import org.activiti.cycle.ContentRepresentationProvider;
import org.activiti.cycle.RepositoryException;
/**
* Central class to register {@link ArtifactType}s, associated {@link FileAction}s and {@link ContentLink}s.
......@@ -31,10 +32,10 @@ public class RepositoryRegistry {
private static Map<String, ArtifactType> registeredFileTypes = new HashMap<String, ArtifactType>();
private static Map<String, List<Class< ? extends FileAction>>> registeredFileActions = new HashMap<String, List<Class< ? extends FileAction>>>();
private static Map<String, List<Class< ? extends ArtifactAction>>> registeredFileActions = new HashMap<String, List<Class< ? extends ArtifactAction>>>();
private static Map<String, List<ContentRepresentationProvider>> registeredContentLinkProviders = new HashMap<String, List<ContentRepresentationProvider>>();
private static Map<String, Class< ? extends FileAction>> defaultFileActions = new HashMap<String, Class< ? extends FileAction>>();
private static Map<String, Class< ? extends ArtifactAction>> defaultFileActions = new HashMap<String, Class< ? extends ArtifactAction>>();
public static void registerFileType(ArtifactType ft) {
registeredFileTypes.put(ft.getTypeIdentifier(), ft);
......@@ -48,7 +49,7 @@ public class RepositoryRegistry {
return registeredFileTypes.get(fileTypeIdentifier);
}
public static void registerFileAction(String fileTypeIdentifier, Class< ? extends FileAction> action) {
public static void registerFileAction(String fileTypeIdentifier, Class< ? extends ArtifactAction> action) {
registerFileAction(fileTypeIdentifier, action, false);
}
......@@ -64,11 +65,11 @@ public class RepositoryRegistry {
}
@Deprecated /** use the one without default flag */
public static void registerFileAction(String fileTypeIdentifier, Class< ? extends FileAction> action, boolean isDefault) {
public static void registerFileAction(String fileTypeIdentifier, Class< ? extends ArtifactAction> action, boolean isDefault) {
if (registeredFileActions.containsKey(fileTypeIdentifier)) {
registeredFileActions.get(fileTypeIdentifier).add(action);
} else {
ArrayList<Class< ? extends FileAction>> list = new ArrayList<Class< ? extends FileAction>>();
ArrayList<Class< ? extends ArtifactAction>> list = new ArrayList<Class< ? extends ArtifactAction>>();
list.add(action);
registeredFileActions.put(fileTypeIdentifier, list);
}
......@@ -79,15 +80,15 @@ public class RepositoryRegistry {
}
@Deprecated
public static Class< ? extends FileAction> getDefaultActionForFileType(String fileTypeName) {
public static Class< ? extends ArtifactAction> getDefaultActionForFileType(String fileTypeName) {
return defaultFileActions.get(fileTypeName);
}
public static List<Class< ? extends FileAction>> getActionsForFileType(String fileTypeName) {
public static List<Class< ? extends ArtifactAction>> getActionsForFileType(String fileTypeName) {
if (registeredFileActions.containsKey(fileTypeName)) {
return registeredFileActions.get(fileTypeName);
} else {
return new ArrayList<Class< ? extends FileAction>>();
return new ArrayList<Class< ? extends ArtifactAction>>();
}
}
......
package org.activiti.impl.cycle.connect;
package org.activiti.cycle.impl;
import java.util.List;
import org.activiti.impl.cycle.connect.api.ContentRepresentation;
import org.activiti.impl.cycle.connect.api.RepositoryArtifact;
import org.activiti.impl.cycle.connect.api.RepositoryConnector;
import org.activiti.impl.cycle.connect.api.RepositoryFolder;
import org.activiti.impl.cycle.connect.api.RepositoryNode;
import org.activiti.cycle.ContentRepresentation;
import org.activiti.cycle.RepositoryArtifact;
import org.activiti.cycle.RepositoryConnector;
import org.activiti.cycle.RepositoryFolder;
import org.activiti.cycle.RepositoryNode;
/**
* Wrapper for {@link RepositoryConnector} to set client url in objects
......
package org.activiti.cycle.impl.connector.mock;
public class DemoConfiguration {
private String baseUrl = "/";
}
package org.activiti.impl.cycle.connect.mock;
package org.activiti.cycle.impl.connector.mock;
import java.util.ArrayList;
import java.util.HashMap;
......@@ -6,16 +6,16 @@ import java.util.List;
import java.util.Map;
import java.util.logging.Logger;
import org.activiti.impl.cycle.connect.RepositoryException;
import org.activiti.impl.cycle.connect.RepositoryRegistry;
import org.activiti.impl.cycle.connect.UnsupportedRepositoryOpperation;
import org.activiti.impl.cycle.connect.api.ContentRepresentation;
import org.activiti.impl.cycle.connect.api.ContentRepresentationProvider;
import org.activiti.impl.cycle.connect.api.ContentRepresentationType;
import org.activiti.impl.cycle.connect.api.RepositoryArtifact;
import org.activiti.impl.cycle.connect.api.RepositoryConnector;
import org.activiti.impl.cycle.connect.api.RepositoryFolder;
import org.activiti.impl.cycle.connect.api.RepositoryNode;
import org.activiti.cycle.ContentRepresentation;
import org.activiti.cycle.ContentRepresentationProvider;
import org.activiti.cycle.ContentRepresentationType;
import org.activiti.cycle.RepositoryArtifact;
import org.activiti.cycle.RepositoryConnector;
import org.activiti.cycle.RepositoryException;
import org.activiti.cycle.RepositoryFolder;
import org.activiti.cycle.RepositoryNode;
import org.activiti.cycle.UnsupportedRepositoryOpperation;
import org.activiti.cycle.impl.RepositoryRegistry;
public class DemoConnector implements RepositoryConnector {
......
......@@ -10,15 +10,15 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.activiti.impl.cycle.connect.signavio;
package org.activiti.cycle.impl.connector.signavio;
import java.util.List;
import org.activiti.impl.cycle.connect.api.ContentRepresentation;
import org.activiti.impl.cycle.connect.api.RepositoryArtifact;
import org.activiti.impl.cycle.connect.api.RepositoryConnector;
import org.activiti.impl.cycle.connect.api.RepositoryFolder;
import org.activiti.impl.cycle.connect.api.RepositoryNode;
import org.activiti.cycle.ContentRepresentation;
import org.activiti.cycle.RepositoryArtifact;
import org.activiti.cycle.RepositoryConnector;
import org.activiti.cycle.RepositoryFolder;
import org.activiti.cycle.RepositoryNode;
/**
* TODO: refactor to differentiate between enterprise and os signavio.
......
......@@ -10,7 +10,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.activiti.impl.cycle.connect.signavio;
package org.activiti.cycle.impl.connector.signavio;
/**
* Object used to configure signavio connector. Candidate for
......
......@@ -10,7 +10,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.activiti.impl.cycle.connect.signavio;
package org.activiti.cycle.impl.connector.signavio;
import java.util.Iterator;
import java.util.Map;
......
......@@ -10,7 +10,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.activiti.impl.cycle.connect.util;
package org.activiti.cycle.impl.util;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
......
......@@ -10,12 +10,12 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.activiti.impl.cycle.connect.util;
package org.activiti.cycle.impl.util;
import java.util.logging.Logger;
import org.activiti.impl.cycle.connect.api.RepositoryArtifact;
import org.activiti.impl.cycle.connect.api.RepositoryFolder;
import org.activiti.cycle.RepositoryArtifact;
import org.activiti.cycle.RepositoryFolder;
/**
*
......
package org.activiti.impl.cycle.connect.mock;
package org.activiti.cycle.impl.connector.mock;
import static org.junit.Assert.assertEquals;
import java.util.List;
import org.activiti.impl.cycle.connect.RestClientRepositoryConnector;
import org.activiti.impl.cycle.connect.api.ContentRepresentation;
import org.activiti.impl.cycle.connect.api.RepositoryArtifact;
import org.activiti.impl.cycle.connect.api.RepositoryConnector;
import org.activiti.impl.cycle.connect.api.RepositoryFolder;
import org.activiti.impl.cycle.connect.api.RepositoryNode;
import org.activiti.cycle.ContentRepresentation;
import org.activiti.cycle.RepositoryArtifact;
import org.activiti.cycle.RepositoryConnector;
import org.activiti.cycle.RepositoryFolder;
import org.activiti.cycle.RepositoryNode;
import org.activiti.cycle.impl.RestClientRepositoryConnector;
import org.junit.Test;
public class DemoConnectorTest {
......@@ -61,7 +61,7 @@ public class DemoConnectorTest {
List<ContentRepresentation> contentRepresentations = file3.getContentRepresentations();
for (ContentRepresentation contentRepresentation : contentRepresentations) {
System.out.println(contentRepresentation.getName() + " -> " + contentRepresentation.getClientUrl());
}
}
......
/* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.activiti.impl.cycle.connect.api.actions;
/**
* Enum to express how the gui representation of a {@link FileAction} should be implemented.
*
* The list of options (still under development): *
* <tr>
* <td>DEFAULT_PANE: Something is shown in the default panel in the GUI (e.g. a PNG)</td>
* <td>OWN_WINDOW: Something is opened in a own Browser window (e.g. Signavio Modeler)</td>
* <td>NONE: The action doesn't need any GUI (e.g. writing something to SVN)</td>
* <td>MODAL_PANEL: The action does need additional parameters from the user</td>
* </tr>
*
* @author bernd.ruecker@camunda.com
*/
public enum FileActionGuiRepresentation {
DEFAULT_PANE, OWN_WINDOW, NONE, MODAL_PANEL
}
/* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.activiti.impl.cycle.connect.signavio.actions;
import java.util.Map;
import org.activiti.impl.cycle.connect.api.RepositoryFolder;
import org.activiti.impl.cycle.connect.api.RepositoryNode;
import org.activiti.impl.cycle.connect.api.actions.FileAction;
import org.activiti.impl.cycle.connect.api.actions.FileActionGuiRepresentation;
/**
*
* @author christian.lipphardt@camunda.com
*/
public class CopyBpmn20ToSvnAction extends FileAction {
private String status;
@Override
public void execute() {
}
@Override
public void execute(RepositoryNode itemInfo) {
if (itemInfo instanceof RepositoryFolder) {
// RepositoryArtifact srcFile = getFile();
// SignavioConnector connector = (SignavioConnector)
// srcFile.getConnector();
// String copyString = connector.getModelAsBpmn20Representation(srcFile);
//
// RepositoryFolder targetFolder = (RepositoryFolder) itemInfo;
// RepositoryConnector svnconnector = targetFolder.getConnector();
//
// RepositoryArtifact destFile = new RepositoryArtifact(svnconnector);
// destFile.setName(srcFile.getName() + ".xml");
// destFile.setTextContent(copyString);
//
// svnconnector.createNewFile(targetFolder, destFile);
}
// TODO: check if copied successfully or throw exception
status = "successfully copied...?";
}
@Override
public void execute(RepositoryNode itemInfo, Map<String, Object> param) {
}
@Override
public FileActionGuiRepresentation getGuiRepresentation() {
return FileActionGuiRepresentation.MODAL_PANEL;
}
@Override
public String getGuiRepresentationAsString() {
return FileActionGuiRepresentation.MODAL_PANEL.toString();
}
@Override
public String getGuiRepresentationUrl() {
return "modalContent/copy.xhtml";
}
@Override
public String getGuiRepresentationContent() {
return status;
}
@Override
public String getName() {
return "Copy BPMN 2.0 to SVN";
}
}
/* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.activiti.impl.cycle.connect.signavio.actions;
import java.util.Map;
import org.activiti.impl.cycle.connect.api.RepositoryFolder;
import org.activiti.impl.cycle.connect.api.RepositoryNode;
import org.activiti.impl.cycle.connect.api.actions.FileAction;
import org.activiti.impl.cycle.connect.api.actions.FileActionGuiRepresentation;
/**
* TODO: Parameter is a folder located in SVN, how to do it?
*
* @author bernd.ruecker@camunda.com
* @author christian.lipphardt@camunda.com
*/
public class CopyJpdl4ToSvnAction extends FileAction {
private String status;
@Override
public void execute() {
// TODO: implement. Think about how to pass the second FileInfo (or FolderInfo?) as own object
status = "successfully copied..... no, joke, not yet implemented";
}
@Override
public void execute(RepositoryNode itemInfo) {
if (itemInfo instanceof RepositoryFolder) {
// RepositoryArtifact srcFile = getFile();
// SignavioConnector connector = (SignavioConnector)
// srcFile.getConnector();
// String copyString = connector.getModelAsJpdl4Representation(srcFile);
//
// RepositoryFolder targetFolder = (RepositoryFolder) itemInfo;
// RepositoryConnector svnconnector = targetFolder.getConnector();
//
// RepositoryArtifact destFile = new RepositoryArtifact(svnconnector);
// destFile.setName(srcFile.getName() + ".xml");
// destFile.setTextContent(copyString);
//
// svnconnector.createNewFile(targetFolder, destFile);
}
// TODO: check if copied successfully or throw exception
status = "successfully copied...?";
}
@Override
public void execute(RepositoryNode itemInfo, Map<String, Object> param) {
}
@Override
public String getGuiRepresentationUrl() {
return "modalContent/copy.xhtml";
}
@Override
public FileActionGuiRepresentation getGuiRepresentation() {
return FileActionGuiRepresentation.MODAL_PANEL;
}
@Override
public String getGuiRepresentationContent() {
return status;
}
@Override
public String getGuiRepresentationAsString() {
return FileActionGuiRepresentation.MODAL_PANEL.toString();
}
@Override
public String getName() {
return "Copy jPDL 4 to SVN";
}
}
/* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.activiti.impl.cycle.connect.signavio.actions;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import org.activiti.impl.cycle.connect.api.RepositoryNode;
import org.activiti.impl.cycle.connect.api.actions.FileAction;
import org.activiti.impl.cycle.connect.api.actions.FileActionGuiRepresentation;
/**
* @author christian.lipphardt@camunda.com
*/
public class CreateJbpm4AntProject extends FileAction {
// TODO: read it from a property
// private static final String PATH_TO_JBPM_PROJECT_ZIP =
// Configuration.getInstance().getProperty("path_to_jbpm_project_zip");
private static final String PATH_TO_JBPM_PROJECT_ZIP = "path_to_jbpm_project_zip";
private static final List<String> replaceList = new ArrayList<String>();
private static final String REPLACE_STRING = "camunda-fox-template-jbpm4-ant";
static {
replaceList.add(".project");
replaceList.add("build.xml");
}
@Override
public void execute() {
}
@Override
public void execute(RepositoryNode itemInfo) {
log.info("Execute fileAction: " + this.getClass().getName());
createJbpmProject(itemInfo, null);
}
@Override
public FileActionGuiRepresentation getGuiRepresentation() {
return FileActionGuiRepresentation.MODAL_PANEL;
}
@Override
public String getGuiRepresentationAsString() {
return FileActionGuiRepresentation.MODAL_PANEL.toString();
}
@Override
public String getGuiRepresentationUrl() {
return "modalContent/createJbpmProject.xhtml";
}
@Override
public String getName() {
return "jBPM Projekt erstellen";
}
public void createJbpmProject(RepositoryNode itemInfo, Map<String, Object> param) {
// if (itemInfo == null || !(itemInfo instanceof RepositoryFolder)) {
// throw new IllegalArgumentException("No valid target folder chosen.");
// }
//
// String replacement = (String) param.get("input");
//
// // get target folder
// RepositoryFolder targetFolder = (RepositoryFolder) itemInfo;
// RepositoryConnector svnconnector = targetFolder.getConnector();
// log.info("TargetFolder-Name: " + targetFolder.getName() + " - Path: " +
// targetFolder.getPath());
//
// RepositoryArtifact srcFile = getFile();
// log.info("srcFile - Name:" + srcFile.getName() + " - Path:" +
// srcFile.getPath());
//
// File file = new File(PATH_TO_JBPM_PROJECT_ZIP);
// FileInputStream fin = null;
// ZipInputStream zin = null;
//
// // TODO: Think about FileInfo-API to allow for complete path instead of
// // folder object which must be access recursively
// // TODO: Fix correct folder and name discovery
//
// try {
// fin = new FileInputStream(file);
// zin = new ZipInputStream(fin);
//
// ZipEntry zipEntry = null;
// RepositoryFolder prevSubFolder = null;
// String prevFolderPath = null;
//
// while ((zipEntry = zin.getNextEntry()) != null) {
// String entryName = zipEntry.getName();
//
// String zipEntryPath = "";
// // String zipEntryLastFolderName = entryName.substring(0,
// // entryName.lastIndexOf("/"));
// String zipEntryFileName = entryName;
//
// if (entryName.lastIndexOf("/") > -1) {
// zipEntryPath = entryName.substring(0, entryName.lastIndexOf("/"));
// // String zipEntryLastFolderName = entryName.substring(0,
// // entryName.lastIndexOf("/"));
// zipEntryFileName = entryName.substring(entryName.lastIndexOf("/") + 1);
// }
//
// // log.info("ZipEntry: " + entryName);
//
// // split to check for subfolders
// // String[] splitPath = entryName.split("/");
// // for (int i = 0; i < splitPath.length; i++) {
// // log.info("splitPath[" + i + "] = " + splitPath[i]);
// // }
//
// if (zipEntry.isDirectory()) {
// // dir found
// // log.info("Folder found: " + entryName);
//
// RepositoryFolder subFolder = new RepositoryFolder(svnconnector);
// subFolder.setName(zipEntryPath);
// subFolder.setPath(targetFolder.getPath() + "/" + zipEntryPath);
// targetFolder.createFolder(subFolder);
//
// prevSubFolder = subFolder;
// prevFolderPath = zipEntryPath;
//
// log.info("Created folder: " + subFolder.getName() + " on " +
// targetFolder.getName() + " with path " + subFolder.getPath());
// } else {
// RepositoryFolder fileParentFolder = null;
// RepositoryArtifact destFile = new RepositoryArtifact(svnconnector);
//
// if ("template.xml".equals(zipEntryFileName)) {
// // process template file found
// // TODO: UGLY AGAIN!!!! Refsctor and make more intelligent and less
// // hard coded
//
// SignavioConnector signavioConnector = (SignavioConnector)
// srcFile.getConnector();
// String jpdl4Representation =
// signavioConnector.getModelAsJpdl4Representation(srcFile);
//
// destFile.setName(srcFile.getName() + ".jpdl.xml");
// destFile.setTextContent(jpdl4Representation);
//
// log.info("destFile is processdefinition from Signavio with name " +
// destFile.getName());
// } else {
// // file found
// destFile.setName(zipEntryFileName);
// log.info("destFile from ZIP with name " + destFile.getName());
// // destFile.setPath(entryName);
// // log.info("destFile - Path: " + destFile.getPath());
//
// // set file binary data
// // byte[] bytes = IoUtils.readBytes(zis);
// // destFile.setBinaryContent(bytes);
//
// String textData = new String(IoUtils.readBytes(zin));
//
// if (replaceList.contains(destFile.getName().toLowerCase()) ||
// replacement.length() == 0 || replacement != null) {
// // replace in string
// destFile.setTextContent(textData.replaceAll(REPLACE_STRING,
// replacement));
// } else {
// // set file text data
// destFile.setTextContent(textData);
// }
// }
//
// // create destFile in svn
// // TODO: Wohoo, that is ugly and only works because the ordering of
// // the ZIP-API
// if (prevSubFolder == null || !prevFolderPath.equals(zipEntryPath)) {
// fileParentFolder = targetFolder;
// } else {
// fileParentFolder = prevSubFolder;
// }
//
// log.info("Create file " + destFile.getName() + " in folder " +
// fileParentFolder.getName() + " (Path = " + fileParentFolder.getPath() +
// ")");
// svnconnector.createNewFile(fileParentFolder, destFile);
// }
//
// // check for subfolders to create them if needed
// // if (checkForPath.length > 1) {
// // // subFolders found, they need to be created
// // int i = 0;
// // while (i < (checkForPath.length - 1)) {
// // FolderInfo subFolder = new FolderInfo(svnconnector);
// // String subFolderName = checkForPath[i];
// // subFolder.setName(subFolderName);
// // targetFolder.createFolder(subFolder);
// // log.info("Created subFolder " + subFolder.getName());
// // i++;
// // }
// // }
// zin.closeEntry();
// }
//
// log.info("Succesfully created JbpmProject!");
// } catch (FileNotFoundException fnfe) {
// // TODO: Add correct exception handling!
// log.log(Level.SEVERE, "FileNotFoundException", fnfe);
// } catch (Exception e) {
// log.log(Level.SEVERE, "Error", e);
// } finally {
// try {
// if (fin != null) {
// fin.close();
// }
// if (zin != null) {
// zin.close();
// }
// } catch (Exception e) {
// // TODO: handle exception
// }
// }
}
@Override
public void execute(RepositoryNode itemInfo, Map<String, Object> param) {
log.info("Execute fileAction: " + this.getClass().getName());
createJbpmProject(itemInfo, param);
}
}
/* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.activiti.impl.cycle.connect.signavio.actions;
import java.util.Map;
import org.activiti.impl.cycle.connect.api.RepositoryNode;
import org.activiti.impl.cycle.connect.api.actions.FileAction;
import org.activiti.impl.cycle.connect.api.actions.FileActionGuiRepresentation;
/**
* TODO: Wie die URL zurueckgeben um das in der GUI zu verwursten?
*
* @author bernd.ruecker@camunda.com
* @author christian.lipphardt@camunda.com
*/
public class OpenModelerAction extends FileAction {
@Override
public void execute() {
}
@Override
public void execute(RepositoryNode itemInfo) {
}
@Override
public void execute(RepositoryNode itemInfo, Map<String, Object> param) {
}
@Override
public FileActionGuiRepresentation getGuiRepresentation() {
return FileActionGuiRepresentation.OWN_WINDOW;
}
@Override
public String getGuiRepresentationUrl() {
return null;
// TODO: Implement
// SignavioConnector signavioConnector = (SignavioConnector)
// getFile().getConnector();
// return signavioConnector.getModellerUrl(getFile());
// TODO: Think about how to get this from the Signavio Connector by the API in the best way
}
@Override
public String getName() {
return "open modeller";
}
@Override
public String getGuiRepresentationAsString() {
return "OWN_WINDOW";
}
}
/* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.activiti.impl.cycle.connect.signavio.actions;
import java.util.Map;
import java.util.logging.Level;
import org.activiti.impl.cycle.connect.api.RepositoryArtifact;
import org.activiti.impl.cycle.connect.api.RepositoryNode;
import org.activiti.impl.cycle.connect.api.actions.FileAction;
import org.activiti.impl.cycle.connect.api.actions.FileActionGuiRepresentation;
/**
*
* @author christian.lipphardt@camunda.com
*/
public class ShowModelViewerAction extends FileAction {
@Override
public void execute() {
}
@Override
public void execute(RepositoryNode itemInfo) {
}
@Override
public void execute(RepositoryNode itemInfo, Map<String, Object> param) {
}
@Override
public FileActionGuiRepresentation getGuiRepresentation() {
return FileActionGuiRepresentation.DEFAULT_PANE;
}
@Override
public String getGuiRepresentationHtmlSnippet() {
String htmlCode = getHTMLSnippetForPublishingProcessModell(getFile());
if(log.isLoggable(Level.FINEST)) {
log.finest(htmlCode);
}
return htmlCode;
}
@Override
public String getGuiRepresentationAsString() {
return FileActionGuiRepresentation.DEFAULT_PANE.toString();
}
@Override
public String getName() {
return "Show Zoomer for Signavio Model";
}
public String getHTMLSnippetForPublishingProcessModell(RepositoryArtifact fileInfo) {
return null;
// TODO: Implement
// try {
// SignavioConnector connector = (SignavioConnector)
// getFile().getConnector();
//
// // String htmlSnippet =
// // getHTMLSnippetForPublishingProcessModell(getFile());
//
// // Creating the JSON Object for the Snippet
// JSONObject resultJsonObject = new JSONObject();
//
// resultJsonObject.put("url", connector.getModelUrl(fileInfo));
// resultJsonObject.put("overflowX", "fit");
// resultJsonObject.put("overflowY", "fit");
// resultJsonObject.put("zoomSlider", true);
// resultJsonObject.put("linkSubProcesses", false);
//
// // Generating the authToken
// JSONArray embeddedModelJSONArray = connector.getEmbeddedModel(fileInfo);
//
// String authToken, authKey_png, authKey_json, authKey_stencilset;
// authToken = authKey_png = authKey_json = authKey_stencilset = "";
//
// for (int i = 0; i < embeddedModelJSONArray.length(); i++) {
// JSONObject tempJsonObject =
// embeddedModelJSONArray.getJSONObject(i).getJSONObject("rep");
//
// String tempRepType = tempJsonObject.getString("type");
//
// // Getting the authKey we need
// if (tempRepType.equals("png"))
// authKey_png = tempJsonObject.getString("authkey");
//
// else if (tempRepType.equals("json"))
// authKey_json = tempJsonObject.getString("authkey");
//
// else if (tempRepType.equals("stencilset"))
// authKey_stencilset = tempJsonObject.getString("authkey");
// }
//
// authToken = authKey_png + "_" + authKey_json + "_" + authKey_stencilset;
//
// // An alternative algorithm for creating the authToken, if the order of
// // the JsonArray is static and doesn't change.
// //
// // JSONObject tempJsonObject =
// // embeddedBOJSONArray.getJSONObject(0).getJSONObject("rep");
// // authToken += tempJsonObject.getString("authkey") + "_";
// //
// // tempJsonObject =
// // embeddedBOJSONArray.getJSONObject(1).getJSONObject("rep");
// // authToken += tempJsonObject.getString("authkey") + "_";
// //
// // tempJsonObject =
// // embeddedBOJSONArray.getJSONObject(1).getJSONObject("rep");
// // authToken += tempJsonObject.getString("authkey");
//
// resultJsonObject.put("authToken", authToken);
//
// // Suggestion: method returns var SERVER_URL for signavio to achieve the
// following
// // kann man folgendes machen.
// // mashupURL = connector.getSERVER_URL().substring(0,SERVER_URL.length()
// -
// // 2) + "mashup/signavio.js";
// // Letzteres um das 'p' in SERVER_URL wegzukriegen
//
// String firstScriptTag = "<script type=\"text/javascript\" src=\"" +
// connector.getSignavioConfiguration().getMashupUrl() + "signavio.js" +
// "\"></script>";
// String secondScriptTag = "<script type=\"text/plain\">" +
// resultJsonObject.toString() + "</script>";
//
// String resultHtmlSnippet = firstScriptTag.concat(secondScriptTag);
//
// return resultHtmlSnippet;
// } catch (Exception exception) {
// throw new
// RepositoryException("Exception during converting embeddedModel into Snippet",
// exception);
// }
}
}
/* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.activiti.impl.cycle.connect.signavio.actions;
import java.util.Map;
import org.activiti.impl.cycle.connect.api.RepositoryNode;
import org.activiti.impl.cycle.connect.api.actions.FileAction;
import org.activiti.impl.cycle.connect.api.actions.FileActionGuiRepresentation;
/**
*
* @author bernd.ruecker@camunda.com
* @author christian.lipphardt@camunda.com
*/
public class ShowPngAction extends FileAction {
@Override
public void execute() {
}
@Override
public void execute(RepositoryNode itemInfo) {
}
@Override
public void execute(RepositoryNode itemInfo, Map<String, Object> param) {
}
@Override
public FileActionGuiRepresentation getGuiRepresentation() {
return FileActionGuiRepresentation.DEFAULT_PANE;
}
@Override
public String getGuiRepresentationHtmlSnippet() {
return null;
// TODO: Implement
// // TODO: Think about all the casting stuff, maybe make that nicer?
// SignavioConnector connector = (SignavioConnector)
// getFile().getConnector();
// String imageUrl = connector.getModelAsPngUrl(getFile());
// // TODO: Think about how to get this from the Signavio Connector by the
// API in the best way
// return "<img src='" + imageUrl + "' />";
}
@Override
public String getName() {
return "show image";
}
@Override
public String getGuiRepresentationAsString() {
return FileActionGuiRepresentation.DEFAULT_PANE.toString();
}
}
/* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.activiti.impl.cycle.connect.signavio.actions;
import java.util.Map;
import org.activiti.impl.cycle.connect.api.RepositoryNode;
import org.activiti.impl.cycle.connect.api.actions.FileAction;
import org.activiti.impl.cycle.connect.api.actions.FileActionGuiRepresentation;
/**
* @author bernd.ruecker@camunda.com
* @author christian.lipphardt@camunda.com
*/
public class ShowjPdl4Action extends FileAction {
@Override
public void execute() {
}
@Override
public void execute(RepositoryNode itemInfo) {
}
@Override
public void execute(RepositoryNode itemInfo, Map<String, Object> param) {
}
@Override
public FileActionGuiRepresentation getGuiRepresentation() {
return FileActionGuiRepresentation.DEFAULT_PANE;
}
@Override
public String getGuiRepresentationContent() {
return null;
// TODO: Implement
// SignavioConnector connector = (SignavioConnector)
// getFile().getConnector();
// String jpdl4 = connector.getModelAsJpdl4Representation(getFile());
// return jpdl4;
}
@Override
public String getName() {
return "Show jPDL 4";
}
@Override
public String getGuiRepresentationAsString() {
return FileActionGuiRepresentation.DEFAULT_PANE.toString();
}
}
/* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.activiti.impl.cycle.connect.signavio.content;
import org.activiti.impl.cycle.connect.signavio.SignavioConnectorConfiguration;
/**
* @author bernd.ruecker@camunda.com
*/
public class JPdl4Provider { // implements ContentLinkProvider {
private final SignavioConnectorConfiguration conf;
public JPdl4Provider(SignavioConnectorConfiguration conf) {
this.conf = conf;
}
// public void addToContentLinks(Map<String, ContentLink> contentLink,
// RepositoryArtifact artifact) {
// ContentLink link = new ContentLink();
// link.setType(ContentRepresentationType.XML);
// link.setName("jpdl4");
// link.setSourceSystemUrl(conf.getSignavioUrl() + artifact.getLocalUrlPart()
// + "/jpdl4");
//
// // SignavioConnector connector = (SignavioConnector)
// // getFile().getConnector();
// // String jpdl4 = connector.getModelAsJpdl4Representation(getFile());
// // return jpdl4;
// }
}
/* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.activiti.impl.cycle.connect.signavio.content;
import org.activiti.impl.cycle.connect.signavio.SignavioConnector;
/**
*
* @author bernd.ruecker@camunda.com
*/
public class PngProvider { // implements ContentLinkProvider {
private final SignavioConnector connector;
public PngProvider(SignavioConnector connector) {
this.connector = connector;
}
// public void addToContentLinks(Map<String, ContentLink> contentLink,
// RepositoryArtifact artifact) {
// ContentLink link = new ContentLink();
// link.setType(ContentRepresentationType.XML);
// link.setName("jpdl4");
// link.setSourceSystemUrl(connector.getSignavioConfiguration().getSignavioUrl()
// + artifact.getLocalUrlPart() + "/png?token=" +
// connector.getSecurityToken());
//
// // SignavioConnector connector = (SignavioConnector)
// getFile().getConnector();
// // String imageUrl = connector.getModelAsPngUrl(getFile());
// // // TODO: Think about how to get this from the Signavio Connector by the
// API in the best way
// // return "<img src='" + imageUrl + "' />";
// }
}
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
<classpathentry kind="src" output="target/classes" path="src/main/java"/>
<classpathentry kind="src" output="target/classes" path="src/main/resources"/>
<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>
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
<classpathentry kind="src" output="target/classes" path="src/main/java"/>
<classpathentry excluding="**" kind="src" output="target/classes" path="src/main/resources"/>
<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="output" path="target/classes"/>
</classpath>
......@@ -55,6 +55,11 @@
<artifactId>activiti-engine</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.activiti</groupId>
<artifactId>activiti-cycle</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
......
......@@ -10,13 +10,10 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.activiti.impl.cycle;
package org.activiti.rest.api.cycle;
/**
* TODO: Clarify what this is used for, sounds like a duplicate for {@link ItemInfo}
*
* @author Nils Preusker
* Class used only for first development steps in GUI
*/
@Deprecated
public class Artifact {
......
......@@ -14,7 +14,6 @@ package org.activiti.rest.api.cycle;
import java.util.Map;
import org.activiti.impl.cycle.Artifact;
import org.activiti.rest.util.ActivitiWebScript;
import org.springframework.extensions.webscripts.Cache;
import org.springframework.extensions.webscripts.Status;
......
......@@ -47,7 +47,7 @@
<type>war</type>
<version>5.0.beta1-SNAPSHOT</version>
<scope>runtime</scope>
</dependency>
</dependency>
</dependencies>
</project>
......@@ -55,6 +55,11 @@
<artifactId>activiti-pvm</artifactId>
<version>${version}</version>
</dependency>
<dependency>
<groupId>org.activiti</groupId>
<artifactId>activiti-cycle</artifactId>
<version>${version}</version>
</dependency>
<dependency>
<groupId>org.apache.ant</groupId>
<artifactId>ant</artifactId>
......@@ -160,6 +165,7 @@
<modules>
<module>modules/activiti-pvm</module>
<module>modules/activiti-engine</module>
<module>modules/activiti-cycle</module>
</modules>
<repositories>
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册