package org.taverna -> org.apache.taverna

Project: http://git-wip-us.apache.org/repos/asf/incubator-taverna-server/repo
Commit: 
http://git-wip-us.apache.org/repos/asf/incubator-taverna-server/commit/00397eff
Tree: 
http://git-wip-us.apache.org/repos/asf/incubator-taverna-server/tree/00397eff
Diff: 
http://git-wip-us.apache.org/repos/asf/incubator-taverna-server/diff/00397eff

Branch: refs/heads/master
Commit: 00397eff0a8170b29906c56c06d5c624bd5fbbe2
Parents: 63fdb89
Author: Stian Soiland-Reyes <[email protected]>
Authored: Tue Jan 9 23:22:30 2018 +0000
Committer: Stian Soiland-Reyes <[email protected]>
Committed: Tue Jan 9 23:22:30 2018 +0000

----------------------------------------------------------------------
 .../server/port_description/AbsentValue.java    |   26 +
 .../server/port_description/AbstractPort.java   |   39 +
 .../AbstractPortDescription.java                |   42 +
 .../server/port_description/AbstractValue.java  |   45 +
 .../server/port_description/ErrorValue.java     |   38 +
 .../port_description/InputDescription.java      |   64 +
 .../server/port_description/LeafValue.java      |   32 +
 .../server/port_description/ListValue.java      |   45 +
 .../server/port_description/Namespaces.java     |   25 +
 .../port_description/OutputDescription.java     |   65 +
 .../server/port_description/package-info.java   |   32 +
 .../port_description/utils/IntAdapter.java      |   45 +
 .../server/port_description/AbsentValue.java    |   26 -
 .../server/port_description/AbstractPort.java   |   39 -
 .../AbstractPortDescription.java                |   42 -
 .../server/port_description/AbstractValue.java  |   45 -
 .../server/port_description/ErrorValue.java     |   38 -
 .../port_description/InputDescription.java      |   64 -
 .../server/port_description/LeafValue.java      |   32 -
 .../server/port_description/ListValue.java      |   45 -
 .../server/port_description/Namespaces.java     |   25 -
 .../port_description/OutputDescription.java     |   65 -
 .../server/port_description/package-info.java   |   32 -
 .../port_description/utils/IntAdapter.java      |   45 -
 .../server/port_description/JaxbSanityTest.java |  114 ++
 .../server/port_description/JaxbSanityTest.java |  114 --
 .../taverna/server/rmidaemon/Registry.java      |   88 +
 .../taverna/server/rmidaemon/package-info.java  |   21 +
 .../org/taverna/server/rmidaemon/Registry.java  |   88 -
 .../taverna/server/rmidaemon/package-info.java  |   21 -
 .../remote/IllegalStateTransitionException.java |   49 +
 .../remote/ImplementationException.java         |   39 +
 .../localworker/remote/RemoteDirectory.java     |   75 +
 .../remote/RemoteDirectoryEntry.java            |   75 +
 .../server/localworker/remote/RemoteFile.java   |  111 ++
 .../server/localworker/remote/RemoteInput.java  |  105 ++
 .../localworker/remote/RemoteListener.java      |   90 +
 .../localworker/remote/RemoteRunFactory.java    |   97 ++
 .../remote/RemoteSecurityContext.java           |   47 +
 .../localworker/remote/RemoteSingleRun.java     |  267 +++
 .../server/localworker/remote/RemoteStatus.java |   53 +
 .../remote/StillWorkingOnItException.java       |   33 +
 .../server/localworker/remote/package-info.java |   22 +
 .../localworker/server/UsageRecordReceiver.java |   42 +
 .../server/localworker/server/package-info.java |   22 +
 .../remote/IllegalStateTransitionException.java |   49 -
 .../remote/ImplementationException.java         |   39 -
 .../localworker/remote/RemoteDirectory.java     |   75 -
 .../remote/RemoteDirectoryEntry.java            |   75 -
 .../server/localworker/remote/RemoteFile.java   |  111 --
 .../server/localworker/remote/RemoteInput.java  |  105 --
 .../localworker/remote/RemoteListener.java      |   90 -
 .../localworker/remote/RemoteRunFactory.java    |   97 --
 .../remote/RemoteSecurityContext.java           |   47 -
 .../localworker/remote/RemoteSingleRun.java     |  267 ---
 .../server/localworker/remote/RemoteStatus.java |   53 -
 .../remote/StillWorkingOnItException.java       |   33 -
 .../server/localworker/remote/package-info.java |   22 -
 .../localworker/server/UsageRecordReceiver.java |   42 -
 .../server/localworker/server/package-info.java |   22 -
 .../taverna/server/unixforker/Forker.java       |  221 +++
 .../org/taverna/server/unixforker/Forker.java   |  221 ---
 .../master/ContentsDescriptorBuilder.java       |  305 ++++
 .../taverna/server/master/DirectoryREST.java    |  388 +++++
 .../server/master/FileConcatenation.java        |   84 +
 .../apache/taverna/server/master/InputREST.java |  265 +++
 .../taverna/server/master/InteractionFeed.java  |  120 ++
 .../server/master/ListenerPropertyREST.java     |   91 +
 .../taverna/server/master/ListenersREST.java    |  106 ++
 .../taverna/server/master/ManagementState.java  |  228 +++
 .../apache/taverna/server/master/RunREST.java   |  512 ++++++
 .../taverna/server/master/RunSecurityREST.java  |  316 ++++
 .../server/master/SingleListenerREST.java       |  110 ++
 .../taverna/server/master/TavernaServer.java    | 1438 ++++++++++++++++
 .../server/master/TavernaServerSupport.java     |  970 +++++++++++
 .../taverna/server/master/admin/Admin.java      | 1113 +++++++++++++
 .../taverna/server/master/admin/AdminBean.java  |  807 +++++++++
 .../server/master/admin/package-info.java       |   46 +
 .../taverna/server/master/api/ContentTypes.java |   63 +
 .../server/master/api/DirectoryBean.java        |   32 +
 .../taverna/server/master/api/FeedBean.java     |   29 +
 .../taverna/server/master/api/InputBean.java    |   37 +
 .../server/master/api/ListenerPropertyBean.java |   31 +
 .../server/master/api/ListenersBean.java        |   29 +
 .../server/master/api/ManagementModel.java      |   74 +
 .../server/master/api/OneListenerBean.java      |   30 +
 .../taverna/server/master/api/RunBean.java      |   33 +
 .../taverna/server/master/api/SecurityBean.java |   30 +
 .../taverna/server/master/api/SupportAware.java |   37 +
 .../server/master/api/TavernaServerBean.java    |  114 ++
 .../taverna/server/master/api/package-info.java |   22 +
 .../server/master/common/Capability.java        |   38 +
 .../server/master/common/Credential.java        |  162 ++
 .../server/master/common/DirEntryReference.java |  106 ++
 .../server/master/common/InputDescription.java  |  123 ++
 .../server/master/common/Namespaces.java        |   52 +
 .../server/master/common/Permission.java        |   56 +
 .../server/master/common/ProfileList.java       |   55 +
 .../taverna/server/master/common/Roles.java     |   38 +
 .../server/master/common/RunReference.java      |   80 +
 .../taverna/server/master/common/Status.java    |   57 +
 .../taverna/server/master/common/Trust.java     |   92 +
 .../taverna/server/master/common/Uri.java       |  445 +++++
 .../server/master/common/VersionedElement.java  |   78 +
 .../taverna/server/master/common/Workflow.java  |  380 +++++
 .../server/master/common/package-info.java      |   42 +
 .../server/master/common/version/Version.java   |   56 +
 .../taverna/server/master/defaults/Default.java |  112 ++
 .../server/master/defaults/package-info.java    |   21 +
 .../exceptions/BadInputPortNameException.java   |   34 +
 .../exceptions/BadPropertyValueException.java   |   39 +
 .../exceptions/BadStateChangeException.java     |   48 +
 .../exceptions/FilesystemAccessException.java   |   51 +
 .../exceptions/GeneralFailureException.java     |   41 +
 .../exceptions/InvalidCredentialException.java  |   49 +
 .../master/exceptions/NoCreateException.java    |   45 +
 .../exceptions/NoCredentialException.java       |   31 +
 .../master/exceptions/NoDestroyException.java   |   37 +
 .../exceptions/NoDirectoryEntryException.java   |   37 +
 .../master/exceptions/NoListenerException.java  |   46 +
 .../master/exceptions/NoUpdateException.java    |   46 +
 .../master/exceptions/NotOwnerException.java    |   36 +
 .../master/exceptions/OverloadedException.java  |   48 +
 .../master/exceptions/UnknownRunException.java  |   40 +
 .../server/master/exceptions/package-info.java  |   42 +
 .../taverna/server/master/facade/Facade.java    |   86 +
 .../server/master/facade/package-info.java      |   23 +
 .../factories/ConfigurableRunFactory.java       |  146 ++
 .../master/factories/ListenerFactory.java       |   59 +
 .../server/master/factories/RunFactory.java     |   53 +
 .../server/master/factories/package-info.java   |   23 +
 .../identity/AuthorityDerivedIDMapper.java      |   63 +
 .../master/identity/CompositeIDMapper.java      |   78 +
 .../master/identity/ConstantIDMapper.java       |   45 +
 .../server/master/identity/NameIDMapper.java    |   63 +
 .../identity/StrippedDownAuthProvider.java      |  294 ++++
 .../taverna/server/master/identity/User.java    |  166 ++
 .../server/master/identity/UserStore.java       |  402 +++++
 .../server/master/identity/UserStoreAPI.java    |  107 ++
 .../identity/WorkflowInternalAuthProvider.java  |  317 ++++
 .../server/master/identity/package-info.java    |   23 +
 .../interaction/InteractionFeedSupport.java     |  329 ++++
 .../server/master/interaction/package-info.java |   23 +
 .../server/master/interfaces/Directory.java     |   95 ++
 .../master/interfaces/DirectoryEntry.java       |   60 +
 .../taverna/server/master/interfaces/File.java  |   82 +
 .../taverna/server/master/interfaces/Input.java |  105 ++
 .../server/master/interfaces/Listener.java      |   77 +
 .../master/interfaces/LocalIdentityMapper.java  |   42 +
 .../master/interfaces/MessageDispatcher.java    |   58 +
 .../server/master/interfaces/Policy.java        |  133 ++
 .../server/master/interfaces/RunStore.java      |   95 ++
 .../interfaces/SecurityContextFactory.java      |   45 +
 .../server/master/interfaces/TavernaRun.java    |  232 +++
 .../interfaces/TavernaSecurityContext.java      |  226 +++
 .../master/interfaces/UriBuilderFactory.java    |   56 +
 .../server/master/interfaces/package-info.java  |   23 +
 .../localworker/AbstractRemoteRunFactory.java   |  452 +++++
 .../master/localworker/ForkRunFactory.java      |  336 ++++
 .../localworker/IdAwareForkRunFactory.java      |  529 ++++++
 .../master/localworker/LocalWorkerFactory.java  |   44 +
 .../master/localworker/LocalWorkerState.java    |  475 ++++++
 .../master/localworker/PersistedState.java      |  270 +++
 .../server/master/localworker/StreamLogger.java |   78 +
 .../server/master/localworker/package-info.java |   23 +
 .../master/notification/EmailDispatcher.java    |  126 ++
 .../master/notification/JabberDispatcher.java   |  153 ++
 .../master/notification/NotificationEngine.java |  158 ++
 .../notification/RateLimitedDispatcher.java     |  102 ++
 .../master/notification/SMSDispatcher.java      |  171 ++
 .../master/notification/TwitterDispatcher.java  |  145 ++
 .../master/notification/atom/AtomFeed.java      |  147 ++
 .../server/master/notification/atom/Event.java  |  123 ++
 .../master/notification/atom/EventDAO.java      |  230 +++
 .../master/notification/atom/package-info.java  |   42 +
 .../master/notification/package-info.java       |   23 +
 .../taverna/server/master/package-info.java     |   24 +
 .../server/master/rest/ContentTypes.java        |   41 +
 .../server/master/rest/DirectoryContents.java   |   74 +
 .../taverna/server/master/rest/FileSegment.java |   91 +
 .../server/master/rest/InteractionFeedREST.java |  139 ++
 .../server/master/rest/ListenerDefinition.java  |   45 +
 .../master/rest/MakeOrUpdateDirEntry.java       |   69 +
 .../master/rest/TavernaServerDirectoryREST.java |  253 +++
 .../master/rest/TavernaServerInputREST.java     |  368 ++++
 .../master/rest/TavernaServerListenersREST.java |  441 +++++
 .../server/master/rest/TavernaServerREST.java   |  617 +++++++
 .../master/rest/TavernaServerRunREST.java       |  810 +++++++++
 .../master/rest/TavernaServerSecurityREST.java  |  788 +++++++++
 .../rest/handler/AccessDeniedHandler.java       |   34 +
 .../rest/handler/BadInputPortNameHandler.java   |   36 +
 .../rest/handler/BadPropertyValueHandler.java   |   36 +
 .../rest/handler/BadStateChangeHandler.java     |   36 +
 .../master/rest/handler/EntryHandler.java       |  147 ++
 .../server/master/rest/handler/FeedHandler.java |   82 +
 .../rest/handler/FileConcatenationHandler.java  |   77 +
 .../master/rest/handler/FileMessageHandler.java |   93 ++
 .../master/rest/handler/FileSegmentHandler.java |   87 +
 .../rest/handler/FilesystemAccessHandler.java   |   36 +
 .../rest/handler/GeneralFailureHandler.java     |   34 +
 .../server/master/rest/handler/HandlerCore.java |   84 +
 .../rest/handler/IllegalArgumentHandler.java    |   34 +
 .../handler/ImplementationProblemHandler.java   |   34 +
 .../rest/handler/InputStreamMessageHandler.java |  120 ++
 .../rest/handler/InvalidCredentialHandler.java  |   36 +
 .../rest/handler/JAXBExceptionHandler.java      |   35 +
 .../rest/handler/NegotiationFailedHandler.java  |   38 +
 .../master/rest/handler/NoCreateHandler.java    |   36 +
 .../rest/handler/NoCredentialHandler.java       |   34 +
 .../master/rest/handler/NoDestroyHandler.java   |   36 +
 .../rest/handler/NoDirectoryEntryHandler.java   |   36 +
 .../master/rest/handler/NoListenerHandler.java  |   36 +
 .../master/rest/handler/NoUpdateHandler.java    |   36 +
 .../master/rest/handler/NotOwnerHandler.java    |   34 +
 .../master/rest/handler/OverloadedHandler.java  |   35 +
 .../master/rest/handler/PermissionHandler.java  |   87 +
 .../rest/handler/Scufl2DocumentHandler.java     |  100 ++
 .../rest/handler/T2FlowDocumentHandler.java     |  131 ++
 .../master/rest/handler/URIListHandler.java     |  134 ++
 .../master/rest/handler/UnknownRunHandler.java  |   36 +
 .../master/rest/handler/ZipStreamHandler.java   |   67 +
 .../master/rest/handler/package-info.java       |   44 +
 .../server/master/rest/package-info.java        |   44 +
 .../taverna/server/master/soap/DirEntry.java    |  113 ++
 .../server/master/soap/FileContents.java        |  184 ++
 .../server/master/soap/PermissionList.java      |   63 +
 .../server/master/soap/TavernaServerSOAP.java   | 1566 ++++++++++++++++++
 .../server/master/soap/WrappedWorkflow.java     |  169 ++
 .../server/master/soap/ZippedDirectory.java     |  102 ++
 .../server/master/soap/package-info.java        |   44 +
 .../server/master/usage/UsageRecord.java        |  130 ++
 .../master/usage/UsageRecordRecorder.java       |  178 ++
 .../server/master/usage/package-info.java       |   22 +
 .../server/master/utils/CallTimeLogger.java     |  100 ++
 .../server/master/utils/CallTimingFilter.java   |   81 +
 .../server/master/utils/CapabilityLister.java   |   60 +
 .../master/utils/CertificateChainFetcher.java   |  212 +++
 .../server/master/utils/Contextualizer.java     |   79 +
 .../taverna/server/master/utils/DerbyUtils.java |   84 +
 .../server/master/utils/FilenameUtils.java      |  281 ++++
 .../utils/FlushThreadLocalCacheInterceptor.java |   34 +
 .../server/master/utils/InvocationCounter.java  |   61 +
 .../taverna/server/master/utils/JCECheck.java   |   73 +
 .../taverna/server/master/utils/JDOSupport.java |  285 ++++
 .../master/utils/LoggingDerbyAdapter.java       |  154 ++
 .../server/master/utils/OneShotThread.java      |   26 +
 .../taverna/server/master/utils/RestUtils.java  |   45 +
 .../master/utils/RuntimeExceptionWrapper.java   |   50 +
 .../server/master/utils/UsernamePrincipal.java  |   82 +
 .../utils/WSDLHeadOptionsInterceptor.java       |   81 +
 .../master/utils/WebappAwareDataSource.java     |  147 ++
 .../taverna/server/master/utils/X500Utils.java  |  120 ++
 .../server/master/utils/package-info.java       |   23 +
 .../master/worker/CompletionNotifier.java       |   58 +
 .../server/master/worker/FactoryBean.java       |   39 +
 .../server/master/worker/PasswordIssuer.java    |   73 +
 .../server/master/worker/PolicyImpl.java        |  171 ++
 .../server/master/worker/PolicyLimits.java      |   56 +
 .../server/master/worker/RemoteRunDelegate.java |  980 +++++++++++
 .../server/master/worker/RunConnection.java     |  252 +++
 .../server/master/worker/RunDBSupport.java      |   96 ++
 .../server/master/worker/RunDatabase.java       |  324 ++++
 .../server/master/worker/RunDatabaseDAO.java    |  323 ++++
 .../master/worker/RunFactoryConfiguration.java  |  411 +++++
 .../master/worker/SecurityContextDelegate.java  |  662 ++++++++
 .../worker/SecurityContextDelegateImpl.java     |  311 ++++
 .../master/worker/SecurityContextFactory.java   |  167 ++
 .../SimpleFormattedCompletionNotifier.java      |   77 +
 .../worker/VelocityCompletionNotifier.java      |  121 ++
 .../server/master/worker/WorkerModel.java       |  216 +++
 .../server/master/worker/package-info.java      |   23 +
 .../master/ContentsDescriptorBuilder.java       |  305 ----
 .../taverna/server/master/DirectoryREST.java    |  388 -----
 .../server/master/FileConcatenation.java        |   84 -
 .../org/taverna/server/master/InputREST.java    |  265 ---
 .../taverna/server/master/InteractionFeed.java  |  120 --
 .../server/master/ListenerPropertyREST.java     |   91 -
 .../taverna/server/master/ListenersREST.java    |  106 --
 .../taverna/server/master/ManagementState.java  |  228 ---
 .../java/org/taverna/server/master/RunREST.java |  512 ------
 .../taverna/server/master/RunSecurityREST.java  |  316 ----
 .../server/master/SingleListenerREST.java       |  110 --
 .../taverna/server/master/TavernaServer.java    | 1438 ----------------
 .../server/master/TavernaServerSupport.java     |  970 -----------
 .../org/taverna/server/master/admin/Admin.java  | 1113 -------------
 .../taverna/server/master/admin/AdminBean.java  |  807 ---------
 .../server/master/admin/package-info.java       |   46 -
 .../taverna/server/master/api/ContentTypes.java |   63 -
 .../server/master/api/DirectoryBean.java        |   32 -
 .../org/taverna/server/master/api/FeedBean.java |   29 -
 .../taverna/server/master/api/InputBean.java    |   37 -
 .../server/master/api/ListenerPropertyBean.java |   31 -
 .../server/master/api/ListenersBean.java        |   29 -
 .../server/master/api/ManagementModel.java      |   74 -
 .../server/master/api/OneListenerBean.java      |   30 -
 .../org/taverna/server/master/api/RunBean.java  |   33 -
 .../taverna/server/master/api/SecurityBean.java |   30 -
 .../taverna/server/master/api/SupportAware.java |   37 -
 .../server/master/api/TavernaServerBean.java    |  114 --
 .../taverna/server/master/api/package-info.java |   22 -
 .../server/master/common/Capability.java        |   38 -
 .../server/master/common/Credential.java        |  162 --
 .../server/master/common/DirEntryReference.java |  106 --
 .../server/master/common/InputDescription.java  |  123 --
 .../server/master/common/Namespaces.java        |   52 -
 .../server/master/common/Permission.java        |   56 -
 .../server/master/common/ProfileList.java       |   55 -
 .../org/taverna/server/master/common/Roles.java |   38 -
 .../server/master/common/RunReference.java      |   80 -
 .../taverna/server/master/common/Status.java    |   57 -
 .../org/taverna/server/master/common/Trust.java |   92 -
 .../org/taverna/server/master/common/Uri.java   |  445 -----
 .../server/master/common/VersionedElement.java  |   78 -
 .../taverna/server/master/common/Workflow.java  |  380 -----
 .../server/master/common/package-info.java      |   42 -
 .../server/master/common/version/Version.java   |   56 -
 .../taverna/server/master/defaults/Default.java |  112 --
 .../server/master/defaults/package-info.java    |   21 -
 .../exceptions/BadInputPortNameException.java   |   34 -
 .../exceptions/BadPropertyValueException.java   |   39 -
 .../exceptions/BadStateChangeException.java     |   48 -
 .../exceptions/FilesystemAccessException.java   |   51 -
 .../exceptions/GeneralFailureException.java     |   41 -
 .../exceptions/InvalidCredentialException.java  |   49 -
 .../master/exceptions/NoCreateException.java    |   45 -
 .../exceptions/NoCredentialException.java       |   31 -
 .../master/exceptions/NoDestroyException.java   |   37 -
 .../exceptions/NoDirectoryEntryException.java   |   37 -
 .../master/exceptions/NoListenerException.java  |   46 -
 .../master/exceptions/NoUpdateException.java    |   46 -
 .../master/exceptions/NotOwnerException.java    |   36 -
 .../master/exceptions/OverloadedException.java  |   48 -
 .../master/exceptions/UnknownRunException.java  |   40 -
 .../server/master/exceptions/package-info.java  |   42 -
 .../taverna/server/master/facade/Facade.java    |   86 -
 .../server/master/facade/package-info.java      |   23 -
 .../factories/ConfigurableRunFactory.java       |  146 --
 .../master/factories/ListenerFactory.java       |   59 -
 .../server/master/factories/RunFactory.java     |   53 -
 .../server/master/factories/package-info.java   |   23 -
 .../identity/AuthorityDerivedIDMapper.java      |   63 -
 .../master/identity/CompositeIDMapper.java      |   78 -
 .../master/identity/ConstantIDMapper.java       |   45 -
 .../server/master/identity/NameIDMapper.java    |   63 -
 .../identity/StrippedDownAuthProvider.java      |  294 ----
 .../taverna/server/master/identity/User.java    |  166 --
 .../server/master/identity/UserStore.java       |  402 -----
 .../server/master/identity/UserStoreAPI.java    |  107 --
 .../identity/WorkflowInternalAuthProvider.java  |  317 ----
 .../server/master/identity/package-info.java    |   23 -
 .../interaction/InteractionFeedSupport.java     |  329 ----
 .../server/master/interaction/package-info.java |   23 -
 .../server/master/interfaces/Directory.java     |   95 --
 .../master/interfaces/DirectoryEntry.java       |   60 -
 .../taverna/server/master/interfaces/File.java  |   82 -
 .../taverna/server/master/interfaces/Input.java |  105 --
 .../server/master/interfaces/Listener.java      |   77 -
 .../master/interfaces/LocalIdentityMapper.java  |   42 -
 .../master/interfaces/MessageDispatcher.java    |   58 -
 .../server/master/interfaces/Policy.java        |  133 --
 .../server/master/interfaces/RunStore.java      |   95 --
 .../interfaces/SecurityContextFactory.java      |   45 -
 .../server/master/interfaces/TavernaRun.java    |  232 ---
 .../interfaces/TavernaSecurityContext.java      |  226 ---
 .../master/interfaces/UriBuilderFactory.java    |   56 -
 .../server/master/interfaces/package-info.java  |   23 -
 .../localworker/AbstractRemoteRunFactory.java   |  452 -----
 .../master/localworker/ForkRunFactory.java      |  336 ----
 .../localworker/IdAwareForkRunFactory.java      |  529 ------
 .../master/localworker/LocalWorkerFactory.java  |   44 -
 .../master/localworker/LocalWorkerState.java    |  475 ------
 .../master/localworker/PersistedState.java      |  270 ---
 .../server/master/localworker/StreamLogger.java |   78 -
 .../server/master/localworker/package-info.java |   23 -
 .../master/notification/EmailDispatcher.java    |  126 --
 .../master/notification/JabberDispatcher.java   |  153 --
 .../master/notification/NotificationEngine.java |  158 --
 .../notification/RateLimitedDispatcher.java     |  102 --
 .../master/notification/SMSDispatcher.java      |  171 --
 .../master/notification/TwitterDispatcher.java  |  145 --
 .../master/notification/atom/AtomFeed.java      |  147 --
 .../server/master/notification/atom/Event.java  |  123 --
 .../master/notification/atom/EventDAO.java      |  230 ---
 .../master/notification/atom/package-info.java  |   42 -
 .../master/notification/package-info.java       |   23 -
 .../org/taverna/server/master/package-info.java |   24 -
 .../server/master/rest/ContentTypes.java        |   41 -
 .../server/master/rest/DirectoryContents.java   |   74 -
 .../taverna/server/master/rest/FileSegment.java |   91 -
 .../server/master/rest/InteractionFeedREST.java |  139 --
 .../server/master/rest/ListenerDefinition.java  |   45 -
 .../master/rest/MakeOrUpdateDirEntry.java       |   69 -
 .../master/rest/TavernaServerDirectoryREST.java |  253 ---
 .../master/rest/TavernaServerInputREST.java     |  368 ----
 .../master/rest/TavernaServerListenersREST.java |  441 -----
 .../server/master/rest/TavernaServerREST.java   |  617 -------
 .../master/rest/TavernaServerRunREST.java       |  810 ---------
 .../master/rest/TavernaServerSecurityREST.java  |  788 ---------
 .../rest/handler/AccessDeniedHandler.java       |   34 -
 .../rest/handler/BadInputPortNameHandler.java   |   36 -
 .../rest/handler/BadPropertyValueHandler.java   |   36 -
 .../rest/handler/BadStateChangeHandler.java     |   36 -
 .../master/rest/handler/EntryHandler.java       |  147 --
 .../server/master/rest/handler/FeedHandler.java |   82 -
 .../rest/handler/FileConcatenationHandler.java  |   77 -
 .../master/rest/handler/FileMessageHandler.java |   93 --
 .../master/rest/handler/FileSegmentHandler.java |   87 -
 .../rest/handler/FilesystemAccessHandler.java   |   36 -
 .../rest/handler/GeneralFailureHandler.java     |   34 -
 .../server/master/rest/handler/HandlerCore.java |   84 -
 .../rest/handler/IllegalArgumentHandler.java    |   34 -
 .../handler/ImplementationProblemHandler.java   |   34 -
 .../rest/handler/InputStreamMessageHandler.java |  120 --
 .../rest/handler/InvalidCredentialHandler.java  |   36 -
 .../rest/handler/JAXBExceptionHandler.java      |   35 -
 .../rest/handler/NegotiationFailedHandler.java  |   38 -
 .../master/rest/handler/NoCreateHandler.java    |   36 -
 .../rest/handler/NoCredentialHandler.java       |   34 -
 .../master/rest/handler/NoDestroyHandler.java   |   36 -
 .../rest/handler/NoDirectoryEntryHandler.java   |   36 -
 .../master/rest/handler/NoListenerHandler.java  |   36 -
 .../master/rest/handler/NoUpdateHandler.java    |   36 -
 .../master/rest/handler/NotOwnerHandler.java    |   34 -
 .../master/rest/handler/OverloadedHandler.java  |   35 -
 .../master/rest/handler/PermissionHandler.java  |   87 -
 .../rest/handler/Scufl2DocumentHandler.java     |  100 --
 .../rest/handler/T2FlowDocumentHandler.java     |  131 --
 .../master/rest/handler/URIListHandler.java     |  134 --
 .../master/rest/handler/UnknownRunHandler.java  |   36 -
 .../master/rest/handler/ZipStreamHandler.java   |   67 -
 .../master/rest/handler/package-info.java       |   44 -
 .../server/master/rest/package-info.java        |   44 -
 .../taverna/server/master/soap/DirEntry.java    |  113 --
 .../server/master/soap/FileContents.java        |  184 --
 .../server/master/soap/PermissionList.java      |   63 -
 .../server/master/soap/TavernaServerSOAP.java   | 1566 ------------------
 .../server/master/soap/WrappedWorkflow.java     |  169 --
 .../server/master/soap/ZippedDirectory.java     |  102 --
 .../server/master/soap/package-info.java        |   44 -
 .../server/master/usage/UsageRecord.java        |  130 --
 .../master/usage/UsageRecordRecorder.java       |  178 --
 .../server/master/usage/package-info.java       |   22 -
 .../server/master/utils/CallTimeLogger.java     |  100 --
 .../server/master/utils/CallTimingFilter.java   |   81 -
 .../server/master/utils/CapabilityLister.java   |   60 -
 .../master/utils/CertificateChainFetcher.java   |  212 ---
 .../server/master/utils/Contextualizer.java     |   79 -
 .../taverna/server/master/utils/DerbyUtils.java |   84 -
 .../server/master/utils/FilenameUtils.java      |  281 ----
 .../utils/FlushThreadLocalCacheInterceptor.java |   34 -
 .../server/master/utils/InvocationCounter.java  |   61 -
 .../taverna/server/master/utils/JCECheck.java   |   73 -
 .../taverna/server/master/utils/JDOSupport.java |  285 ----
 .../master/utils/LoggingDerbyAdapter.java       |  154 --
 .../server/master/utils/OneShotThread.java      |   26 -
 .../taverna/server/master/utils/RestUtils.java  |   45 -
 .../master/utils/RuntimeExceptionWrapper.java   |   50 -
 .../server/master/utils/UsernamePrincipal.java  |   82 -
 .../utils/WSDLHeadOptionsInterceptor.java       |   81 -
 .../master/utils/WebappAwareDataSource.java     |  147 --
 .../taverna/server/master/utils/X500Utils.java  |  120 --
 .../server/master/utils/package-info.java       |   23 -
 .../master/worker/CompletionNotifier.java       |   58 -
 .../server/master/worker/FactoryBean.java       |   39 -
 .../server/master/worker/PasswordIssuer.java    |   73 -
 .../server/master/worker/PolicyImpl.java        |  171 --
 .../server/master/worker/PolicyLimits.java      |   56 -
 .../server/master/worker/RemoteRunDelegate.java |  980 -----------
 .../server/master/worker/RunConnection.java     |  252 ---
 .../server/master/worker/RunDBSupport.java      |   96 --
 .../server/master/worker/RunDatabase.java       |  324 ----
 .../server/master/worker/RunDatabaseDAO.java    |  323 ----
 .../master/worker/RunFactoryConfiguration.java  |  411 -----
 .../master/worker/SecurityContextDelegate.java  |  662 --------
 .../worker/SecurityContextDelegateImpl.java     |  311 ----
 .../master/worker/SecurityContextFactory.java   |  167 --
 .../SimpleFormattedCompletionNotifier.java      |   77 -
 .../worker/VelocityCompletionNotifier.java      |  121 --
 .../server/master/worker/WorkerModel.java       |  216 ---
 .../server/master/worker/package-info.java      |   23 -
 .../taverna/server/master/JaxbSanityTest.java   |  370 +++++
 .../server/master/TavernaServerImplTest.java    |  262 +++
 .../master/WorkflowSerializationTest.java       |   84 +
 .../taverna/server/master/mocks/ExampleRun.java |  465 ++++++
 .../taverna/server/master/mocks/MockPolicy.java |   75 +
 .../master/mocks/SimpleListenerFactory.java     |   80 +
 .../mocks/SimpleNonpersistentRunStore.java      |  167 ++
 .../server/master/mocks/SimpleServerPolicy.java |  126 ++
 .../taverna/server/master/JaxbSanityTest.java   |  370 -----
 .../server/master/TavernaServerImplTest.java    |  262 ---
 .../master/WorkflowSerializationTest.java       |   84 -
 .../taverna/server/master/mocks/ExampleRun.java |  465 ------
 .../taverna/server/master/mocks/MockPolicy.java |   75 -
 .../master/mocks/SimpleListenerFactory.java     |   80 -
 .../mocks/SimpleNonpersistentRunStore.java      |  167 --
 .../server/master/mocks/SimpleServerPolicy.java |  126 --
 .../server/localworker/api/Constants.java       |  154 ++
 .../server/localworker/api/RunAccounting.java   |   35 +
 .../taverna/server/localworker/api/Worker.java  |  148 ++
 .../server/localworker/api/WorkerFactory.java   |   34 +
 .../localworker/impl/DirectoryDelegate.java     |  174 ++
 .../server/localworker/impl/FileDelegate.java   |  155 ++
 .../server/localworker/impl/LocalWorker.java    |  782 +++++++++
 .../localworker/impl/TavernaRunManager.java     |  255 +++
 .../server/localworker/impl/WorkerCore.java     |  931 +++++++++++
 .../impl/utils/FilenameVerifier.java            |  169 ++
 .../localworker/impl/utils/TimingOutTask.java   |   56 +
 .../server/localworker/api/Constants.java       |  154 --
 .../server/localworker/api/RunAccounting.java   |   35 -
 .../taverna/server/localworker/api/Worker.java  |  148 --
 .../server/localworker/api/WorkerFactory.java   |   34 -
 .../localworker/impl/DirectoryDelegate.java     |  174 --
 .../server/localworker/impl/FileDelegate.java   |  155 --
 .../server/localworker/impl/LocalWorker.java    |  782 ---------
 .../localworker/impl/TavernaRunManager.java     |  255 ---
 .../server/localworker/impl/WorkerCore.java     |  931 -----------
 .../impl/utils/FilenameVerifier.java            |  169 --
 .../localworker/impl/utils/TimingOutTask.java   |   56 -
 .../localworker/impl/LocalWorkerTest.java       |  564 +++++++
 .../localworker/impl/LocalWorkerTest.java       |  564 -------
 520 files changed, 39308 insertions(+), 39308 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-taverna-server/blob/00397eff/taverna-server-port-description/src/main/java/org/apache/taverna/server/port_description/AbsentValue.java
----------------------------------------------------------------------
diff --git 
a/taverna-server-port-description/src/main/java/org/apache/taverna/server/port_description/AbsentValue.java
 
b/taverna-server-port-description/src/main/java/org/apache/taverna/server/port_description/AbsentValue.java
new file mode 100644
index 0000000..140d6a5
--- /dev/null
+++ 
b/taverna-server-port-description/src/main/java/org/apache/taverna/server/port_description/AbsentValue.java
@@ -0,0 +1,26 @@
+/*
+ */
+package org.taverna.server.port_description;
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You 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.
+ */
+
+import javax.xml.bind.annotation.XmlType;
+
+@XmlType(name = "AbsentValue")
+public class AbsentValue extends AbstractValue {
+
+}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-server/blob/00397eff/taverna-server-port-description/src/main/java/org/apache/taverna/server/port_description/AbstractPort.java
----------------------------------------------------------------------
diff --git 
a/taverna-server-port-description/src/main/java/org/apache/taverna/server/port_description/AbstractPort.java
 
b/taverna-server-port-description/src/main/java/org/apache/taverna/server/port_description/AbstractPort.java
new file mode 100644
index 0000000..5ed8d70
--- /dev/null
+++ 
b/taverna-server-port-description/src/main/java/org/apache/taverna/server/port_description/AbstractPort.java
@@ -0,0 +1,39 @@
+/*
+ */
+package org.taverna.server.port_description;
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You 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.
+ */
+
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlID;
+import javax.xml.bind.annotation.XmlSchemaType;
+import javax.xml.bind.annotation.XmlType;
+import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
+
+import org.taverna.server.port_description.utils.IntAdapter;
+
+@XmlType(name = "Port")
+public class AbstractPort {
+       @XmlID
+       @XmlAttribute(required = true)
+       public String name;
+
+       @XmlAttribute
+       @XmlSchemaType(name = "int")
+       @XmlJavaTypeAdapter(IntAdapter.class)
+       public Integer depth;
+}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-server/blob/00397eff/taverna-server-port-description/src/main/java/org/apache/taverna/server/port_description/AbstractPortDescription.java
----------------------------------------------------------------------
diff --git 
a/taverna-server-port-description/src/main/java/org/apache/taverna/server/port_description/AbstractPortDescription.java
 
b/taverna-server-port-description/src/main/java/org/apache/taverna/server/port_description/AbstractPortDescription.java
new file mode 100644
index 0000000..721e8c8
--- /dev/null
+++ 
b/taverna-server-port-description/src/main/java/org/apache/taverna/server/port_description/AbstractPortDescription.java
@@ -0,0 +1,42 @@
+/*
+ */
+package org.taverna.server.port_description;
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You 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.
+ */
+
+import java.net.URI;
+
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlSchemaType;
+import javax.xml.bind.annotation.XmlType;
+
+@XmlType(name = "PortDescription")
+public abstract class AbstractPortDescription {
+       @XmlAttribute
+       public String workflowId;
+       @XmlAttribute
+       @XmlSchemaType(name = "anyURI")
+       public URI workflowRun;
+       @XmlAttribute
+       public String workflowRunId;
+
+       public void fillInBaseData(String docId, String runId, URI runUrl) {
+               this.workflowId = docId;
+               this.workflowRun = runUrl;
+               this.workflowRunId = runId;
+       }
+}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-server/blob/00397eff/taverna-server-port-description/src/main/java/org/apache/taverna/server/port_description/AbstractValue.java
----------------------------------------------------------------------
diff --git 
a/taverna-server-port-description/src/main/java/org/apache/taverna/server/port_description/AbstractValue.java
 
b/taverna-server-port-description/src/main/java/org/apache/taverna/server/port_description/AbstractValue.java
new file mode 100644
index 0000000..1ded5c7
--- /dev/null
+++ 
b/taverna-server-port-description/src/main/java/org/apache/taverna/server/port_description/AbstractValue.java
@@ -0,0 +1,45 @@
+/*
+ */
+package org.taverna.server.port_description;
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You 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.
+ */
+
+import static org.taverna.server.port_description.Namespaces.XLINK;
+
+import java.net.URI;
+
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlSchemaType;
+import javax.xml.bind.annotation.XmlSeeAlso;
+import javax.xml.bind.annotation.XmlType;
+
+@XmlType(name = "Value")
+@XmlSeeAlso( { ErrorValue.class, LeafValue.class, ListValue.class, 
AbsentValue.class })
+public abstract class AbstractValue {
+       @XmlAttribute(namespace = XLINK)
+       @XmlSchemaType(name = "anyURI")
+       public URI href;
+
+       public void setAddress(URI uri, String localAddress) {
+               if (uri.getPath().endsWith("/")) {
+                       href = URI.create(uri + "wd/out/" + localAddress);
+               } else {
+                       href = URI.create(uri + "/wd/out/" + localAddress);
+               }
+               //about = "out/" + localAddress;
+       }
+}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-server/blob/00397eff/taverna-server-port-description/src/main/java/org/apache/taverna/server/port_description/ErrorValue.java
----------------------------------------------------------------------
diff --git 
a/taverna-server-port-description/src/main/java/org/apache/taverna/server/port_description/ErrorValue.java
 
b/taverna-server-port-description/src/main/java/org/apache/taverna/server/port_description/ErrorValue.java
new file mode 100644
index 0000000..641c380
--- /dev/null
+++ 
b/taverna-server-port-description/src/main/java/org/apache/taverna/server/port_description/ErrorValue.java
@@ -0,0 +1,38 @@
+/*
+ */
+package org.taverna.server.port_description;
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You 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.
+ */
+
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlSchemaType;
+import javax.xml.bind.annotation.XmlType;
+import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
+
+import org.taverna.server.port_description.utils.IntAdapter;
+
+@XmlType(name = "ErrorValue")
+public class ErrorValue extends AbstractValue {
+       @XmlAttribute
+       @XmlSchemaType(name = "int")
+       @XmlJavaTypeAdapter(IntAdapter.class)
+       public Integer depth;
+       @XmlAttribute(name = "errorFile")
+       public String fileName;
+       @XmlAttribute(name = "errorByteLength")
+       public Long byteLength;
+}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-server/blob/00397eff/taverna-server-port-description/src/main/java/org/apache/taverna/server/port_description/InputDescription.java
----------------------------------------------------------------------
diff --git 
a/taverna-server-port-description/src/main/java/org/apache/taverna/server/port_description/InputDescription.java
 
b/taverna-server-port-description/src/main/java/org/apache/taverna/server/port_description/InputDescription.java
new file mode 100644
index 0000000..c11baa1
--- /dev/null
+++ 
b/taverna-server-port-description/src/main/java/org/apache/taverna/server/port_description/InputDescription.java
@@ -0,0 +1,64 @@
+/*
+ */
+package org.taverna.server.port_description;
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You 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.
+ */
+
+import static org.taverna.server.port_description.Namespaces.XLINK;
+
+import java.net.URI;
+import java.util.ArrayList;
+import java.util.List;
+
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlRootElement;
+import javax.xml.bind.annotation.XmlSchemaType;
+import javax.xml.bind.annotation.XmlType;
+
+/**
+ * A description of the inputs of a workflow run, as they are currently known
+ * about.
+ * 
+ * @author Donal Fellows.
+ */
+@XmlRootElement
+public class InputDescription extends AbstractPortDescription {
+       @XmlElement
+       public List<InputPort> input = new ArrayList<>();
+
+       @XmlType(name = "InputPort")
+       public static class InputPort extends AbstractPort {
+               @XmlAttribute(namespace = XLINK)
+               @XmlSchemaType(name = "anyURI")
+               public URI href;
+       }
+
+       /**
+        * Add an input port to the list of ports.
+        * 
+        * @param name
+        *            The name of the port to add.
+        * @return The port (so that its details may be set);
+        */
+       public InputPort addPort(String name) {
+               InputPort p = new InputPort();
+               p.name = name;
+               input.add(p);
+               return p;
+       }
+}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-server/blob/00397eff/taverna-server-port-description/src/main/java/org/apache/taverna/server/port_description/LeafValue.java
----------------------------------------------------------------------
diff --git 
a/taverna-server-port-description/src/main/java/org/apache/taverna/server/port_description/LeafValue.java
 
b/taverna-server-port-description/src/main/java/org/apache/taverna/server/port_description/LeafValue.java
new file mode 100644
index 0000000..95658bc
--- /dev/null
+++ 
b/taverna-server-port-description/src/main/java/org/apache/taverna/server/port_description/LeafValue.java
@@ -0,0 +1,32 @@
+/*
+ */
+package org.taverna.server.port_description;
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You 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.
+ */
+
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlType;
+
+@XmlType(name = "LeafValue")
+public class LeafValue extends AbstractValue {
+       @XmlAttribute(name = "contentFile")
+       public String fileName;
+       @XmlAttribute(name = "contentType")
+       public String contentType;
+       @XmlAttribute(name = "contentByteLength")
+       public Long byteLength;
+}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-server/blob/00397eff/taverna-server-port-description/src/main/java/org/apache/taverna/server/port_description/ListValue.java
----------------------------------------------------------------------
diff --git 
a/taverna-server-port-description/src/main/java/org/apache/taverna/server/port_description/ListValue.java
 
b/taverna-server-port-description/src/main/java/org/apache/taverna/server/port_description/ListValue.java
new file mode 100644
index 0000000..f3e8ff1
--- /dev/null
+++ 
b/taverna-server-port-description/src/main/java/org/apache/taverna/server/port_description/ListValue.java
@@ -0,0 +1,45 @@
+/*
+ */
+package org.taverna.server.port_description;
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You 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.
+ */
+
+import java.util.ArrayList;
+import java.util.List;
+
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlElements;
+import javax.xml.bind.annotation.XmlSchemaType;
+import javax.xml.bind.annotation.XmlType;
+import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
+
+import org.taverna.server.port_description.utils.IntAdapter;
+
+@XmlType(name = "ListValue")
+public class ListValue extends AbstractValue {
+       @XmlAttribute
+       @XmlSchemaType(name = "int")
+       @XmlJavaTypeAdapter(IntAdapter.class)
+       public Integer length;
+       @XmlElements({
+                       @XmlElement(name = "value", type = LeafValue.class, 
nillable = false),
+                       @XmlElement(name = "list", type = ListValue.class, 
nillable = false),
+                       @XmlElement(name = "error", type = ErrorValue.class, 
nillable = false),
+                       @XmlElement(name = "absent", type = AbsentValue.class, 
nillable = false) })
+       public List<AbstractValue> contents = new ArrayList<>();
+}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-server/blob/00397eff/taverna-server-port-description/src/main/java/org/apache/taverna/server/port_description/Namespaces.java
----------------------------------------------------------------------
diff --git 
a/taverna-server-port-description/src/main/java/org/apache/taverna/server/port_description/Namespaces.java
 
b/taverna-server-port-description/src/main/java/org/apache/taverna/server/port_description/Namespaces.java
new file mode 100644
index 0000000..f60e6c4
--- /dev/null
+++ 
b/taverna-server-port-description/src/main/java/org/apache/taverna/server/port_description/Namespaces.java
@@ -0,0 +1,25 @@
+/*
+ */
+package org.taverna.server.port_description;
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You 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.
+ */
+
+public interface Namespaces {
+       static final String DATA = "http://ns.taverna.org.uk/2010/port/";;
+       static final String RUN = "http://ns.taverna.org.uk/2010/run/";;
+       static final String XLINK = "http://www.w3.org/1999/xlink";;
+}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-server/blob/00397eff/taverna-server-port-description/src/main/java/org/apache/taverna/server/port_description/OutputDescription.java
----------------------------------------------------------------------
diff --git 
a/taverna-server-port-description/src/main/java/org/apache/taverna/server/port_description/OutputDescription.java
 
b/taverna-server-port-description/src/main/java/org/apache/taverna/server/port_description/OutputDescription.java
new file mode 100644
index 0000000..2f402d1
--- /dev/null
+++ 
b/taverna-server-port-description/src/main/java/org/apache/taverna/server/port_description/OutputDescription.java
@@ -0,0 +1,65 @@
+/*
+ */
+package org.taverna.server.port_description;
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You 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.
+ */
+
+import java.util.ArrayList;
+import java.util.List;
+
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlElements;
+import javax.xml.bind.annotation.XmlRootElement;
+import javax.xml.bind.annotation.XmlType;
+
+/**
+ * A description of the outputs of a workflow run, as they are currently known
+ * about.
+ * 
+ * @author Donal Fellows
+ */
+@XmlRootElement(name = "workflowOutputs")
+public class OutputDescription extends AbstractPortDescription {
+       private static final AbsentValue ABSENT_VALUE = new AbsentValue();
+       @XmlElement(name = "output")
+       public List<OutputPort> ports = new ArrayList<>();
+
+       @XmlType(name = "OutputPort")
+       public static class OutputPort extends AbstractPort {
+               @XmlElements({
+                               @XmlElement(name = "value", type = 
LeafValue.class, nillable = false, required = true),
+                               @XmlElement(name = "list", type = 
ListValue.class, nillable = false, required = true),
+                               @XmlElement(name = "error", type = 
ErrorValue.class, nillable = false, required = true),
+                               @XmlElement(name = "absent", type = 
AbsentValue.class, nillable = false, required = true) })
+               public AbstractValue output;
+       }
+
+       /**
+        * Add an output port to the list of ports.
+        * 
+        * @param name
+        *            The name of the port to add.
+        * @return The port (so that its value may be set);
+        */
+       public OutputPort addPort(String name) {
+               OutputPort p = new OutputPort();
+               p.name = name;
+               p.output = ABSENT_VALUE;
+               ports.add(p);
+               return p;
+       }
+}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-server/blob/00397eff/taverna-server-port-description/src/main/java/org/apache/taverna/server/port_description/package-info.java
----------------------------------------------------------------------
diff --git 
a/taverna-server-port-description/src/main/java/org/apache/taverna/server/port_description/package-info.java
 
b/taverna-server-port-description/src/main/java/org/apache/taverna/server/port_description/package-info.java
new file mode 100644
index 0000000..76228db
--- /dev/null
+++ 
b/taverna-server-port-description/src/main/java/org/apache/taverna/server/port_description/package-info.java
@@ -0,0 +1,32 @@
+/*
+ */
+@XmlSchema(namespace = DATA, elementFormDefault = QUALIFIED, 
attributeFormDefault = QUALIFIED, xmlns = {
+               @XmlNs(prefix = "port", namespaceURI = DATA),
+               @XmlNs(prefix = "xlink", namespaceURI = XLINK),
+               @XmlNs(prefix = "run", namespaceURI = RUN) })
+package org.taverna.server.port_description;
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You 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.
+ */
+
+import static javax.xml.bind.annotation.XmlNsForm.QUALIFIED;
+import static org.taverna.server.port_description.Namespaces.DATA;
+import static org.taverna.server.port_description.Namespaces.RUN;
+import static org.taverna.server.port_description.Namespaces.XLINK;
+
+import javax.xml.bind.annotation.XmlNs;
+import javax.xml.bind.annotation.XmlSchema;
+

http://git-wip-us.apache.org/repos/asf/incubator-taverna-server/blob/00397eff/taverna-server-port-description/src/main/java/org/apache/taverna/server/port_description/utils/IntAdapter.java
----------------------------------------------------------------------
diff --git 
a/taverna-server-port-description/src/main/java/org/apache/taverna/server/port_description/utils/IntAdapter.java
 
b/taverna-server-port-description/src/main/java/org/apache/taverna/server/port_description/utils/IntAdapter.java
new file mode 100644
index 0000000..de9a3a8
--- /dev/null
+++ 
b/taverna-server-port-description/src/main/java/org/apache/taverna/server/port_description/utils/IntAdapter.java
@@ -0,0 +1,45 @@
+/*
+ */
+package org.taverna.server.port_description.utils;
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You 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.
+ */
+
+import static javax.xml.bind.DatatypeConverter.parseInt;
+import static javax.xml.bind.DatatypeConverter.printInt;
+
+import javax.xml.bind.annotation.adapters.XmlAdapter;
+
+/**
+ * A type conversion utility for use with JAXB.
+ * 
+ * @author Donal Fellows
+ */
+public class IntAdapter extends XmlAdapter<String, Integer> {
+       @Override
+       public String marshal(Integer value) throws Exception {
+               if (value == null)
+                       return null;
+               return printInt(value);
+       }
+
+       @Override
+       public Integer unmarshal(String value) throws Exception {
+               if (value == null)
+                       return null;
+               return parseInt(value);
+       }
+}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-server/blob/00397eff/taverna-server-port-description/src/main/java/org/taverna/server/port_description/AbsentValue.java
----------------------------------------------------------------------
diff --git 
a/taverna-server-port-description/src/main/java/org/taverna/server/port_description/AbsentValue.java
 
b/taverna-server-port-description/src/main/java/org/taverna/server/port_description/AbsentValue.java
deleted file mode 100644
index 140d6a5..0000000
--- 
a/taverna-server-port-description/src/main/java/org/taverna/server/port_description/AbsentValue.java
+++ /dev/null
@@ -1,26 +0,0 @@
-/*
- */
-package org.taverna.server.port_description;
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You 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.
- */
-
-import javax.xml.bind.annotation.XmlType;
-
-@XmlType(name = "AbsentValue")
-public class AbsentValue extends AbstractValue {
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-server/blob/00397eff/taverna-server-port-description/src/main/java/org/taverna/server/port_description/AbstractPort.java
----------------------------------------------------------------------
diff --git 
a/taverna-server-port-description/src/main/java/org/taverna/server/port_description/AbstractPort.java
 
b/taverna-server-port-description/src/main/java/org/taverna/server/port_description/AbstractPort.java
deleted file mode 100644
index 5ed8d70..0000000
--- 
a/taverna-server-port-description/src/main/java/org/taverna/server/port_description/AbstractPort.java
+++ /dev/null
@@ -1,39 +0,0 @@
-/*
- */
-package org.taverna.server.port_description;
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You 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.
- */
-
-import javax.xml.bind.annotation.XmlAttribute;
-import javax.xml.bind.annotation.XmlID;
-import javax.xml.bind.annotation.XmlSchemaType;
-import javax.xml.bind.annotation.XmlType;
-import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
-
-import org.taverna.server.port_description.utils.IntAdapter;
-
-@XmlType(name = "Port")
-public class AbstractPort {
-       @XmlID
-       @XmlAttribute(required = true)
-       public String name;
-
-       @XmlAttribute
-       @XmlSchemaType(name = "int")
-       @XmlJavaTypeAdapter(IntAdapter.class)
-       public Integer depth;
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-server/blob/00397eff/taverna-server-port-description/src/main/java/org/taverna/server/port_description/AbstractPortDescription.java
----------------------------------------------------------------------
diff --git 
a/taverna-server-port-description/src/main/java/org/taverna/server/port_description/AbstractPortDescription.java
 
b/taverna-server-port-description/src/main/java/org/taverna/server/port_description/AbstractPortDescription.java
deleted file mode 100644
index 721e8c8..0000000
--- 
a/taverna-server-port-description/src/main/java/org/taverna/server/port_description/AbstractPortDescription.java
+++ /dev/null
@@ -1,42 +0,0 @@
-/*
- */
-package org.taverna.server.port_description;
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You 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.
- */
-
-import java.net.URI;
-
-import javax.xml.bind.annotation.XmlAttribute;
-import javax.xml.bind.annotation.XmlSchemaType;
-import javax.xml.bind.annotation.XmlType;
-
-@XmlType(name = "PortDescription")
-public abstract class AbstractPortDescription {
-       @XmlAttribute
-       public String workflowId;
-       @XmlAttribute
-       @XmlSchemaType(name = "anyURI")
-       public URI workflowRun;
-       @XmlAttribute
-       public String workflowRunId;
-
-       public void fillInBaseData(String docId, String runId, URI runUrl) {
-               this.workflowId = docId;
-               this.workflowRun = runUrl;
-               this.workflowRunId = runId;
-       }
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-server/blob/00397eff/taverna-server-port-description/src/main/java/org/taverna/server/port_description/AbstractValue.java
----------------------------------------------------------------------
diff --git 
a/taverna-server-port-description/src/main/java/org/taverna/server/port_description/AbstractValue.java
 
b/taverna-server-port-description/src/main/java/org/taverna/server/port_description/AbstractValue.java
deleted file mode 100644
index 1ded5c7..0000000
--- 
a/taverna-server-port-description/src/main/java/org/taverna/server/port_description/AbstractValue.java
+++ /dev/null
@@ -1,45 +0,0 @@
-/*
- */
-package org.taverna.server.port_description;
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You 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.
- */
-
-import static org.taverna.server.port_description.Namespaces.XLINK;
-
-import java.net.URI;
-
-import javax.xml.bind.annotation.XmlAttribute;
-import javax.xml.bind.annotation.XmlSchemaType;
-import javax.xml.bind.annotation.XmlSeeAlso;
-import javax.xml.bind.annotation.XmlType;
-
-@XmlType(name = "Value")
-@XmlSeeAlso( { ErrorValue.class, LeafValue.class, ListValue.class, 
AbsentValue.class })
-public abstract class AbstractValue {
-       @XmlAttribute(namespace = XLINK)
-       @XmlSchemaType(name = "anyURI")
-       public URI href;
-
-       public void setAddress(URI uri, String localAddress) {
-               if (uri.getPath().endsWith("/")) {
-                       href = URI.create(uri + "wd/out/" + localAddress);
-               } else {
-                       href = URI.create(uri + "/wd/out/" + localAddress);
-               }
-               //about = "out/" + localAddress;
-       }
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-server/blob/00397eff/taverna-server-port-description/src/main/java/org/taverna/server/port_description/ErrorValue.java
----------------------------------------------------------------------
diff --git 
a/taverna-server-port-description/src/main/java/org/taverna/server/port_description/ErrorValue.java
 
b/taverna-server-port-description/src/main/java/org/taverna/server/port_description/ErrorValue.java
deleted file mode 100644
index 641c380..0000000
--- 
a/taverna-server-port-description/src/main/java/org/taverna/server/port_description/ErrorValue.java
+++ /dev/null
@@ -1,38 +0,0 @@
-/*
- */
-package org.taverna.server.port_description;
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You 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.
- */
-
-import javax.xml.bind.annotation.XmlAttribute;
-import javax.xml.bind.annotation.XmlSchemaType;
-import javax.xml.bind.annotation.XmlType;
-import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
-
-import org.taverna.server.port_description.utils.IntAdapter;
-
-@XmlType(name = "ErrorValue")
-public class ErrorValue extends AbstractValue {
-       @XmlAttribute
-       @XmlSchemaType(name = "int")
-       @XmlJavaTypeAdapter(IntAdapter.class)
-       public Integer depth;
-       @XmlAttribute(name = "errorFile")
-       public String fileName;
-       @XmlAttribute(name = "errorByteLength")
-       public Long byteLength;
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-server/blob/00397eff/taverna-server-port-description/src/main/java/org/taverna/server/port_description/InputDescription.java
----------------------------------------------------------------------
diff --git 
a/taverna-server-port-description/src/main/java/org/taverna/server/port_description/InputDescription.java
 
b/taverna-server-port-description/src/main/java/org/taverna/server/port_description/InputDescription.java
deleted file mode 100644
index c11baa1..0000000
--- 
a/taverna-server-port-description/src/main/java/org/taverna/server/port_description/InputDescription.java
+++ /dev/null
@@ -1,64 +0,0 @@
-/*
- */
-package org.taverna.server.port_description;
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You 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.
- */
-
-import static org.taverna.server.port_description.Namespaces.XLINK;
-
-import java.net.URI;
-import java.util.ArrayList;
-import java.util.List;
-
-import javax.xml.bind.annotation.XmlAttribute;
-import javax.xml.bind.annotation.XmlElement;
-import javax.xml.bind.annotation.XmlRootElement;
-import javax.xml.bind.annotation.XmlSchemaType;
-import javax.xml.bind.annotation.XmlType;
-
-/**
- * A description of the inputs of a workflow run, as they are currently known
- * about.
- * 
- * @author Donal Fellows.
- */
-@XmlRootElement
-public class InputDescription extends AbstractPortDescription {
-       @XmlElement
-       public List<InputPort> input = new ArrayList<>();
-
-       @XmlType(name = "InputPort")
-       public static class InputPort extends AbstractPort {
-               @XmlAttribute(namespace = XLINK)
-               @XmlSchemaType(name = "anyURI")
-               public URI href;
-       }
-
-       /**
-        * Add an input port to the list of ports.
-        * 
-        * @param name
-        *            The name of the port to add.
-        * @return The port (so that its details may be set);
-        */
-       public InputPort addPort(String name) {
-               InputPort p = new InputPort();
-               p.name = name;
-               input.add(p);
-               return p;
-       }
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-server/blob/00397eff/taverna-server-port-description/src/main/java/org/taverna/server/port_description/LeafValue.java
----------------------------------------------------------------------
diff --git 
a/taverna-server-port-description/src/main/java/org/taverna/server/port_description/LeafValue.java
 
b/taverna-server-port-description/src/main/java/org/taverna/server/port_description/LeafValue.java
deleted file mode 100644
index 95658bc..0000000
--- 
a/taverna-server-port-description/src/main/java/org/taverna/server/port_description/LeafValue.java
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- */
-package org.taverna.server.port_description;
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You 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.
- */
-
-import javax.xml.bind.annotation.XmlAttribute;
-import javax.xml.bind.annotation.XmlType;
-
-@XmlType(name = "LeafValue")
-public class LeafValue extends AbstractValue {
-       @XmlAttribute(name = "contentFile")
-       public String fileName;
-       @XmlAttribute(name = "contentType")
-       public String contentType;
-       @XmlAttribute(name = "contentByteLength")
-       public Long byteLength;
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-server/blob/00397eff/taverna-server-port-description/src/main/java/org/taverna/server/port_description/ListValue.java
----------------------------------------------------------------------
diff --git 
a/taverna-server-port-description/src/main/java/org/taverna/server/port_description/ListValue.java
 
b/taverna-server-port-description/src/main/java/org/taverna/server/port_description/ListValue.java
deleted file mode 100644
index f3e8ff1..0000000
--- 
a/taverna-server-port-description/src/main/java/org/taverna/server/port_description/ListValue.java
+++ /dev/null
@@ -1,45 +0,0 @@
-/*
- */
-package org.taverna.server.port_description;
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You 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.
- */
-
-import java.util.ArrayList;
-import java.util.List;
-
-import javax.xml.bind.annotation.XmlAttribute;
-import javax.xml.bind.annotation.XmlElement;
-import javax.xml.bind.annotation.XmlElements;
-import javax.xml.bind.annotation.XmlSchemaType;
-import javax.xml.bind.annotation.XmlType;
-import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
-
-import org.taverna.server.port_description.utils.IntAdapter;
-
-@XmlType(name = "ListValue")
-public class ListValue extends AbstractValue {
-       @XmlAttribute
-       @XmlSchemaType(name = "int")
-       @XmlJavaTypeAdapter(IntAdapter.class)
-       public Integer length;
-       @XmlElements({
-                       @XmlElement(name = "value", type = LeafValue.class, 
nillable = false),
-                       @XmlElement(name = "list", type = ListValue.class, 
nillable = false),
-                       @XmlElement(name = "error", type = ErrorValue.class, 
nillable = false),
-                       @XmlElement(name = "absent", type = AbsentValue.class, 
nillable = false) })
-       public List<AbstractValue> contents = new ArrayList<>();
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-server/blob/00397eff/taverna-server-port-description/src/main/java/org/taverna/server/port_description/Namespaces.java
----------------------------------------------------------------------
diff --git 
a/taverna-server-port-description/src/main/java/org/taverna/server/port_description/Namespaces.java
 
b/taverna-server-port-description/src/main/java/org/taverna/server/port_description/Namespaces.java
deleted file mode 100644
index f60e6c4..0000000
--- 
a/taverna-server-port-description/src/main/java/org/taverna/server/port_description/Namespaces.java
+++ /dev/null
@@ -1,25 +0,0 @@
-/*
- */
-package org.taverna.server.port_description;
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You 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.
- */
-
-public interface Namespaces {
-       static final String DATA = "http://ns.taverna.org.uk/2010/port/";;
-       static final String RUN = "http://ns.taverna.org.uk/2010/run/";;
-       static final String XLINK = "http://www.w3.org/1999/xlink";;
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-server/blob/00397eff/taverna-server-port-description/src/main/java/org/taverna/server/port_description/OutputDescription.java
----------------------------------------------------------------------
diff --git 
a/taverna-server-port-description/src/main/java/org/taverna/server/port_description/OutputDescription.java
 
b/taverna-server-port-description/src/main/java/org/taverna/server/port_description/OutputDescription.java
deleted file mode 100644
index 2f402d1..0000000
--- 
a/taverna-server-port-description/src/main/java/org/taverna/server/port_description/OutputDescription.java
+++ /dev/null
@@ -1,65 +0,0 @@
-/*
- */
-package org.taverna.server.port_description;
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You 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.
- */
-
-import java.util.ArrayList;
-import java.util.List;
-
-import javax.xml.bind.annotation.XmlElement;
-import javax.xml.bind.annotation.XmlElements;
-import javax.xml.bind.annotation.XmlRootElement;
-import javax.xml.bind.annotation.XmlType;
-
-/**
- * A description of the outputs of a workflow run, as they are currently known
- * about.
- * 
- * @author Donal Fellows
- */
-@XmlRootElement(name = "workflowOutputs")
-public class OutputDescription extends AbstractPortDescription {
-       private static final AbsentValue ABSENT_VALUE = new AbsentValue();
-       @XmlElement(name = "output")
-       public List<OutputPort> ports = new ArrayList<>();
-
-       @XmlType(name = "OutputPort")
-       public static class OutputPort extends AbstractPort {
-               @XmlElements({
-                               @XmlElement(name = "value", type = 
LeafValue.class, nillable = false, required = true),
-                               @XmlElement(name = "list", type = 
ListValue.class, nillable = false, required = true),
-                               @XmlElement(name = "error", type = 
ErrorValue.class, nillable = false, required = true),
-                               @XmlElement(name = "absent", type = 
AbsentValue.class, nillable = false, required = true) })
-               public AbstractValue output;
-       }
-
-       /**
-        * Add an output port to the list of ports.
-        * 
-        * @param name
-        *            The name of the port to add.
-        * @return The port (so that its value may be set);
-        */
-       public OutputPort addPort(String name) {
-               OutputPort p = new OutputPort();
-               p.name = name;
-               p.output = ABSENT_VALUE;
-               ports.add(p);
-               return p;
-       }
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-server/blob/00397eff/taverna-server-port-description/src/main/java/org/taverna/server/port_description/package-info.java
----------------------------------------------------------------------
diff --git 
a/taverna-server-port-description/src/main/java/org/taverna/server/port_description/package-info.java
 
b/taverna-server-port-description/src/main/java/org/taverna/server/port_description/package-info.java
deleted file mode 100644
index 76228db..0000000
--- 
a/taverna-server-port-description/src/main/java/org/taverna/server/port_description/package-info.java
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- */
-@XmlSchema(namespace = DATA, elementFormDefault = QUALIFIED, 
attributeFormDefault = QUALIFIED, xmlns = {
-               @XmlNs(prefix = "port", namespaceURI = DATA),
-               @XmlNs(prefix = "xlink", namespaceURI = XLINK),
-               @XmlNs(prefix = "run", namespaceURI = RUN) })
-package org.taverna.server.port_description;
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You 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.
- */
-
-import static javax.xml.bind.annotation.XmlNsForm.QUALIFIED;
-import static org.taverna.server.port_description.Namespaces.DATA;
-import static org.taverna.server.port_description.Namespaces.RUN;
-import static org.taverna.server.port_description.Namespaces.XLINK;
-
-import javax.xml.bind.annotation.XmlNs;
-import javax.xml.bind.annotation.XmlSchema;
-

http://git-wip-us.apache.org/repos/asf/incubator-taverna-server/blob/00397eff/taverna-server-port-description/src/main/java/org/taverna/server/port_description/utils/IntAdapter.java
----------------------------------------------------------------------
diff --git 
a/taverna-server-port-description/src/main/java/org/taverna/server/port_description/utils/IntAdapter.java
 
b/taverna-server-port-description/src/main/java/org/taverna/server/port_description/utils/IntAdapter.java
deleted file mode 100644
index de9a3a8..0000000
--- 
a/taverna-server-port-description/src/main/java/org/taverna/server/port_description/utils/IntAdapter.java
+++ /dev/null
@@ -1,45 +0,0 @@
-/*
- */
-package org.taverna.server.port_description.utils;
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You 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.
- */
-
-import static javax.xml.bind.DatatypeConverter.parseInt;
-import static javax.xml.bind.DatatypeConverter.printInt;
-
-import javax.xml.bind.annotation.adapters.XmlAdapter;
-
-/**
- * A type conversion utility for use with JAXB.
- * 
- * @author Donal Fellows
- */
-public class IntAdapter extends XmlAdapter<String, Integer> {
-       @Override
-       public String marshal(Integer value) throws Exception {
-               if (value == null)
-                       return null;
-               return printInt(value);
-       }
-
-       @Override
-       public Integer unmarshal(String value) throws Exception {
-               if (value == null)
-                       return null;
-               return parseInt(value);
-       }
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-server/blob/00397eff/taverna-server-port-description/src/test/java/org/apache/taverna/server/port_description/JaxbSanityTest.java
----------------------------------------------------------------------
diff --git 
a/taverna-server-port-description/src/test/java/org/apache/taverna/server/port_description/JaxbSanityTest.java
 
b/taverna-server-port-description/src/test/java/org/apache/taverna/server/port_description/JaxbSanityTest.java
new file mode 100644
index 0000000..de15cfa
--- /dev/null
+++ 
b/taverna-server-port-description/src/test/java/org/apache/taverna/server/port_description/JaxbSanityTest.java
@@ -0,0 +1,114 @@
+package org.taverna.server.port_description;
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You 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.
+ */
+
+import java.io.IOException;
+import java.io.StringWriter;
+
+import javax.xml.bind.JAXBContext;
+import javax.xml.bind.JAXBException;
+import javax.xml.bind.SchemaOutputResolver;
+import javax.xml.transform.Result;
+import javax.xml.transform.stream.StreamResult;
+
+import org.junit.Assert;
+import org.junit.Before;
+import org.junit.Test;
+
+/**
+ * This test file ensures that the JAXB bindings will work once deployed 
instead
+ * of mysteriously failing in service.
+ * 
+ * @author Donal Fellows
+ */
+public class JaxbSanityTest {
+       SchemaOutputResolver sink;
+       StringWriter schema;
+
+       String schema() {
+               return schema.toString();
+       }
+
+       private String schemaTest(Class<?>... classes) throws IOException, 
JAXBException {
+               Assert.assertTrue(schema().isEmpty());
+               JAXBContext.newInstance(classes).generateSchema(sink);
+               Assert.assertFalse(schema().isEmpty());
+               return schema();
+       }
+
+       @Before
+       public void init() {
+               schema = new StringWriter();
+               sink = new SchemaOutputResolver() {
+                       @Override
+                       public Result createOutput(String namespaceUri,
+                                       String suggestedFileName) throws 
IOException {
+                               StreamResult sr = new StreamResult(schema);
+                               sr.setSystemId("/dev/null");
+                               return sr;
+                       }
+               };
+       }
+
+       @Test
+       public void testJAXBForInput() throws Exception {
+               schemaTest(InputDescription.InputPort.class);
+       }
+
+       @Test
+       public void testJAXBForInputDescription() throws Exception {
+               schemaTest(InputDescription.class);
+       }
+
+       @Test
+       public void testJAXBForAbsentValue() throws Exception {
+               schemaTest(AbstractValue.class);
+       }
+
+       @Test
+       public void testJAXBForAbstractValue() throws Exception {
+               schemaTest(AbstractValue.class);
+       }
+
+       @Test
+       public void testJAXBForErrorValue() throws Exception {
+               schemaTest(ErrorValue.class);
+       }
+
+       @Test
+       public void testJAXBForLeafValue() throws Exception {
+               schemaTest(LeafValue.class);
+       }
+
+       @Test
+       public void testJAXBForListValue() throws Exception {
+               schemaTest(ListValue.class);
+       }
+
+       @Test
+       public void testJAXBForOutputDescription() throws Exception {
+               schemaTest(OutputDescription.class);
+       }
+
+       @Test
+       public void testJAXBForEverythingAtOnce() throws Exception {
+               schemaTest(AbsentValue.class, AbstractValue.class, 
ListValue.class,
+                               LeafValue.class, ErrorValue.class, 
OutputDescription.class,
+                               InputDescription.InputPort.class, 
InputDescription.class);
+               // System.out.println(schema());
+       }
+}


Reply via email to