Skip to content
mrietveld edited this page Oct 21, 2012 · 20 revisions

Sorry Tiho, hope you don't mind that I made this here? Wanted to at the jbpm-designer repo, but couldn't.. :/

Table of contents

In general, "Old code --> confusing --> makes it harder to develop new code :("

Classes that can be deleted

org.jbpm.designer.server.ResourceList

  • Comes from this commit which has the following note:
    • "Harald Meyer's master's thesis results about resource handling in process models. EXPERIMENTAL!"
  • Configured in the web.xml

The org.jbpm.designer.web.repository package (and all its classes)
org.jbpm.designer.web.server.UUIDBasedRepositoryServlet

  • Looks like Antoine's initial attempts at designer persistence
  • Not worth salvaging this code, since it takes a different approach
  • Configured in the web.xml (UUIDBasedRepositoryServlet)

org.jbpm.designer.web.server.FileStoreServlet

  • Doesn't look like it's being used anywhere.
  • Configured in web.xml (performance cost)

The org.jbpm.designer.web.plugin package (and all its classes)

  • Servlet for "plugins registered against the platforms."
  • Looks like this is leftover from Oryx?
  • Configured in web.xml (PluginServiceServlet)

org.jbpm.designer.server.*

It looks like practically all of the classes in this package can be deleted. I ended up going through almost all of them, 1 by 1, and then I realized that it looks like the whole package (and any sub-packages) aren't even being used.

There's a bunch of code having to do with stencils here, though, so some of it may be used by current code. Hard to tell.. :/

org.jbpm.designer.server.AMLSupport

  • Not configured in web.xml
  • It's the only class that uses the jbpt (de.hpi.bpt) dependency.
  • Deleting this class thus means that we can remove the following deps as well:
    • jbpt:jbpt:0.10
    • commons-fileupload:commons-fileupload:1.2.1
    • de.hpi:atlas:1.0.0

org.jbpm.designer.server.SimpleStorageServlet

  • Not configured in web.xml
  • Servlet, looks like early (2007) persistence work

org.jbpm.designer.server.WorkList

  • Not configured in web.xml
  • Servlet, 90% of the code is commented out
  • Runs the lib/ext-2.0.2 javascript
  • The lib/ext-2.0.2 javascript dependency can probably also be deleted once this is gone?

org.jbpm.designer.server.EngineProxy

  • Not configured in web.xml
  • References a URL containing "oryx/engineproxy"
  • Looks like old ORYX code.

Once SimpleStorageServlet, Worklist and EngineProxy have been deleted, we can remove this dependency:

  • commons-configuration:commons-configuration:1.6

org.jbpm.designer.server.AlternativesRenderer

  • Not configured in web.xml
  • Looks pretty old

org.jbpm.designer.server.RDF2JSONServlet
org.jbpm.designer.server.ServiceComposerServlet
org.jbpm.designer.server.StencilSetExtensionGenerator
org.jbpm.designer.server.StencilSetExtensionGeneratorServlet
org.jbpm.designer.server.StencilSetJSONPServlet
org.jbpm.designer.server.StencilSetUtil
org.jbpm.designer.server.SyntaxErrorException

  • Not configured in web.xml
  • Old code
  • (Lots of TODO's with "Auto-generated catch block" :_( )

Dependencies that can be removed

None of the following dependencies are needed during compile time, although some of them might still be reference in unused (!!) imports:

  • org.jbpm:jbpm-bpmn2
  • org.apache.velocity:velocity
  • org.thoughtworks.xstream:xstream
  • org.xmappr:xmappr
  • xalan:xalan
  • avalon-framework:avalon-framework
  • org.apache.abdera:abdera-i18n
  • commons-collections:commons-collections