001: // THIS SOFTWARE IS PROVIDED BY SOFTARIS PTY.LTD. AND OTHER METABOSS
002: // CONTRIBUTORS ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, INCLUDING,
003: // BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
004: // FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL SOFTARIS PTY.LTD.
005: // OR OTHER METABOSS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
006: // INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
007: // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
008: // OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
009: // LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
010: // NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
011: // EVEN IF SOFTARIS PTY.LTD. OR OTHER METABOSS CONTRIBUTORS ARE ADVISED OF THE
012: // POSSIBILITY OF SUCH DAMAGE.
013: //
014: // Copyright 2000-2005 © Softaris Pty.Ltd. All Rights Reserved.
015: package com.metaboss.sdlctools.domains.enterprisemodel.storage;
016:
017: import com.metaboss.enterprise.ps.PSException;
018:
019: public interface PSService {
020: /** Naming URL of the component */
021: public static final String COMPONENT_URL = "component:/com.metaboss.sdlctools.domains.enterprisemodel.storage.PSService";
022:
023: /** Returns details entity corresponding to given reference or null struct if definition not found */
024: public STService getService(String pServiceRef) throws PSException;
025:
026: /** Inserts new service record into the database */
027: public void insertService(STService pRecord) throws PSException;
028:
029: /** Returns all operations comprising service */
030: public STOperation[] getOperations(String pServiceRef)
031: throws PSException;
032:
033: /** Returns single operation with the specified name from specified service */
034: public STOperation getOperation(String pServiceRef,
035: String pOperationName) throws PSException;
036:
037: /** Returns single operation with the specified ref */
038: public STOperation getOperation(String pOperationRef)
039: throws PSException;
040:
041: /** Returns all implementations stored for the service */
042: public STServiceimplementation[] getImplementations(
043: String pServiceRef) throws PSException;
044:
045: /** Returns single service implementation details with the specified name from specified service */
046: public STServiceimplementation getImplementation(
047: String pServiceRef, String pServiceimplementationRef)
048: throws PSException;
049:
050: /** Returns list of input fields for the operation with the specified name from specified service */
051: public STField[] getInputFields(String pServiceRef,
052: String pOperationName) throws PSException;
053:
054: /** Returns list of input constraints for the operation with the specified name from specified service */
055: public STConstraint[] getInputConstraints(String pServiceRef,
056: String pOperationName) throws PSException;
057:
058: /** Returns list of output fields for the operation */
059: public STField[] getOutputFields(String pServiceRef,
060: String pOperationName) throws PSException;
061:
062: /** Returns list of output messages for the operation */
063: public STOutputMessage[] getOutputMessages(String pServiceRef,
064: String pOperationName) throws PSException;
065:
066: /** inserts operation into the service */
067: public void insertOperation(String pServiceRef,
068: STOperation pNewOperation) throws PSException;
069:
070: /** inserts implementation into the service */
071: public void insertImplementation(String pServiceRef,
072: STServiceimplementation pNewImplementation)
073: throws PSException;
074:
075: /** updates implementation into the service */
076: public void updateImplementation(String pServiceRef,
077: STServiceimplementation pUpdatedImplementation)
078: throws PSException;
079:
080: /** inserts input field into the operation inside the service */
081: public void insertInputField(String pServiceRef,
082: String pOperationName, STField pNewField)
083: throws PSException;
084:
085: /** inserts output field into the operation inside the service */
086: public void insertOutputField(String pServiceRef,
087: String pOperationName, STField pNewField)
088: throws PSException;
089:
090: /** Inserts output message into the operation inside the service */
091: public void insertOutputMessage(String pServiceRef,
092: String pOperationName, STOutputMessage pNewOutputMessage)
093: throws PSException;
094:
095: /** Retireves implementation source archive for the specified service */
096: public com.metaboss.sdlctools.types.enterprisemodel.ZipArchive getImplementationSource(
097: String pServiceRef, String pServiceimplementationRef)
098: throws PSException;
099:
100: /** Saves implementation source for the specified service implementation */
101: public void updateImplementationSource(
102: String pServiceRef,
103: com.metaboss.sdlctools.types.enterprisemodel.ZipArchive pSourceArchive)
104: throws PSException;
105: }
|