OpenEngSB Deploy Domain Manual

Version 2.0.0

Open Engineering Service Bus Development Team and Contributors


1. Deploy Domain
1.1. Description
1.2. Functional Interface
1.3. Event Interface

Chapter 1. Deploy Domain

The deploy domain is a domain for all deploy tools, like Maven.

1.1. Description

The deploy domain deploys a specific pre-configured project or suite of projects.

1.2. Functional Interface

The following listing presents the Java Domain Interface. This interface also contains information about events raised by this domain.

/**
 * This domain can be used to deploy projects. The affected project is usually configured in the respective tool
 * connector.
 */
public interface DeployDomain extends Domain {

    /**
     * Deploy the currently configured project. This method returns at once with an id. The deploy process is conducted
     * asynchronously. The result can be retrieved using the events raised by this domain, which also contain the id.
     */
    @Raises({ DeployStartEvent.class, DeployEndEvent.class })
    String deploy();

    /**
     * Deploy the currently configured project. This method returns at once with an id. The deploy process is conducted
     * asynchronously. The result can be retrieved using the events raised by this domain where the processId-field
     * contains the supplied processId
     */
    @Raises({ DeployStartEvent.class, DeployFailEvent.class, DeploySuccessEvent.class })
    void deploy(long processId);
}

1.3. Event Interface

The following interface presents the events an appointment connector can throw:

public interface DeployDomainEvents extends DomainEvents {

    void raiseEvent(DeployStartEvent e);

    @Deprecated
    void raiseEvent(DeployEndEvent e);

    void raiseEvent(DeployFailEvent e);

    void raiseEvent(DeploySuccessEvent e);
}