com.sap.caf.eu.gp.bo.provider.api

Interface IGPBusinessObjectProvider

All Known Implementing Classes:
GPAbstractBusinessObjectProvider

public interface IGPBusinessObjectProvider

Implementations of business object providers must implement this interface.

Each implementation is responsible for providing meta data for business object types as well as life cycle methods for business object instances to the framework.

Version:
1.0

Method Summary
 Enumeration createEndpointCategoryEnumeration()
          Create an Enumeration of all Endpoint Category supported by this BusinessObjectProvider.
 Enumeration createEndpointNameEnumeration(String category)
          Create an Enumeration of all Endpoint Name supported by a given Endpoint Category of this BusinessObjectProivder.
 boolean getHierarchySupported()
          Retrieve the hierarchy behaviour for Template of this BusinessObjectProvider.
 String getName()
          Retrieve the Name of this BusinessObjectProvider.
 IGPPatternTemplateReader getPatternTemplateReader()
          Retrieve the PatternTemplateReader of this BusinessObjectProvider.
 IGPBusinessObjectPickerBehaviour getPickerBehaviour()
          Retrieve the PickerBehaviour of this BusinessObjectProvider.
 IGPPlainTemplateReader getPlainTemplateReader()
          Retrieve the PlainTemplateReader of this BusinessObjectProvider.
 IGPBusinessObjectAspect readObjectAspect(IUser user, IGPBusinessObjectEndpoint endpoint, String name, String id, IGPBusinessObjectAttributeLocator locator)
          Read an Aspect of a BusinessObject handled by this BusinessObjectProvider.
 Enumeration readObjectAspectEnumeration(IUser user, IGPBusinessObjectEndpoint endpoint, String name, IGPStructure restriction, IGPBusinessObjectAttributeLocator locator)
          Read an Enumeration of selected Aspect of BusinessObject handled by this BusinessObjectProvider.
 IGPBusinessObjectTemplateDetail readTemplateDetail(IUser user, IGPBusinessObjectEndpoint endpoint, String name)
          Read the Detail of a BusinessObjectTemplate of this BusinessObjectProvider.
 IGPBusinessObjectTemplateOverview readTemplateOverview(IUser user, IGPBusinessObjectEndpoint endpoint, String name)
          Read the Overview of a BusinessObjectTemplate of this BusinessObjectProvider.
 String resolveDescription(Locale locale)
          Resolve the Description of this BusinessObjectProvider.
 String resolveTitle(Locale locale)
          Resolve the Title of this BusinessObjectProvider.
 

Method Detail

createEndpointCategoryEnumeration

Enumeration createEndpointCategoryEnumeration()
                                              throws GPEngineException
Create an Enumeration of all Endpoint Category supported by this BusinessObjectProvider. The Enumeration contains String entries in random sequence. An empty Enumeration indicates that this BusinessObjectProvider always operates locally and expects each Endpoint to be given as null

Returns:
the created Enumeration, never null
Throws:
GPEngineException - in case the Enumeration could not be created due to internal problems

createEndpointNameEnumeration

Enumeration createEndpointNameEnumeration(String category)
                                          throws GPEngineException
Create an Enumeration of all Endpoint Name supported by a given Endpoint Category of this BusinessObjectProivder. The Enumeration contains String entries in random sequence.

Parameters:
category - the Endpoint Category for the Enumeration to create
Returns:
the created Enumeration, never null
Throws:
GPEngineException - in case the Enumeration could not be created due to internal problems

getHierarchySupported

boolean getHierarchySupported()
Retrieve the hierarchy behaviour for Template of this BusinessObjectProvider.

Returns:
true in case the Template are organized hierarchically, false otherwise

getName

String getName()
Retrieve the Name of this BusinessObjectProvider. The Name is the unique ID of the BusinessObjectProvider.

Returns:
the retrieved Name, never null

getPatternTemplateReader

IGPPatternTemplateReader getPatternTemplateReader()
Retrieve the PatternTemplateReader of this BusinessObjectProvider. The PatternTemplateReader allows Template selection by matching the Name against a Pattern.

Returns:
the retrieved PatternTemplateReader, null in case Pattern access is not supported

getPickerBehaviour

IGPBusinessObjectPickerBehaviour getPickerBehaviour()
Retrieve the PickerBehaviour of this BusinessObjectProvider.

Returns:
the retrieved PickerBehaviour, null in case no picking is supported.

getPlainTemplateReader

IGPPlainTemplateReader getPlainTemplateReader()
Retrieve the PlainTemplateReader of this BusinessObjectProvider. The PlainTemplateReader allows selection of all Template.

Returns:
the retrieved PatternTemplateReader, null in case Pattern access is not supported

readObjectAspect

IGPBusinessObjectAspect readObjectAspect(IUser user,
                                         IGPBusinessObjectEndpoint endpoint,
                                         String name,
                                         String id,
                                         IGPBusinessObjectAttributeLocator locator)
                                         throws GPEngineException,
                                                GPInvocationException
Read an Aspect of a BusinessObject handled by this BusinessObjectProvider. The Locator determines which attribute values of the BusinessObject the Aspect is supposed to contain.

Parameters:
context - the UserContext by which to read the Aspect, never null
endpoint - the Endpoint at which the BusinessObjectTemplate participating in the Ascpect is located, null for providers operating locally
name - the Name of the BusinessObjectTemplate participating in the Aspect to retrieve, never null
id - the Id of the BusinessObject participating in the Aspect to retrieve, never null
locator - the Locator for the attribute values of the Aspect to retrieve, null for none
Returns:
the retrieved Aspect, null in case none was found
Throws:
GPEngineException - in case the Aspect could not be retrieved due to internal problems
GPInvocationException - in case the given UserContext, Name or Id are invalid

readObjectAspectEnumeration

Enumeration readObjectAspectEnumeration(IUser user,
                                        IGPBusinessObjectEndpoint endpoint,
                                        String name,
                                        IGPStructure restriction,
                                        IGPBusinessObjectAttributeLocator locator)
                                        throws GPEngineException,
                                               GPInvocationException
Read an Enumeration of selected Aspect of BusinessObject handled by this BusinessObjectProvider. The Enumeration contains IGPBusinessObjectAspect entries in random sequence. Only BusinessObject with attribute values matching the given Restriction are returned. Multiple ValueLabel entries on the same level are treated as AND-clause, multiple ValueData entries on the same level as OR-clause. The Locator determines which attribute values of the BusinessObject each Aspect is supposed to contain.

Parameters:
endpoint - the Endpoint at which the BusinessObjectTemplate participating in the Aspect is located, null for providers operating locally
name - the Name of the BusinessObjectTemplate participating in the Aspect to enumerate, never null
restriction - the Restriction concerning the BusinessObject participating in the Aspect to enumerate, null for no restriction
locator - the Locator for the attribute values of the Aspect to enumerate, null for none
Returns:
the created Enumeration, never null
Throws:
GPEngineException - in case the Enumeration could not be created due to internal problems
GPInvocationException - in case the given UserContext or Name are invalid

readTemplateDetail

IGPBusinessObjectTemplateDetail readTemplateDetail(IUser user,
                                                   IGPBusinessObjectEndpoint endpoint,
                                                   String name)
                                                   throws GPEngineException,
                                                          GPInvocationException
Read the Detail of a BusinessObjectTemplate of this BusinessObjectProvider.

Parameters:
context - the UserContext by which to read the Detail, never null
endpoint - the Endpoint at which the BusinessObjectTemplate is located, null for providers operating locally
name - the Name of the BusinessObjectTemplate for which to read the Detail, never null
Returns:
the read Detail, null in case none was found
Throws:
GPEngineException - in case the Detail could not be retrieved due to internal problems
GPInvocationException - in case the given UserContext or Name are invalid

readTemplateOverview

IGPBusinessObjectTemplateOverview readTemplateOverview(IUser user,
                                                       IGPBusinessObjectEndpoint endpoint,
                                                       String name)
                                                       throws GPEngineException,
                                                              GPInvocationException
Read the Overview of a BusinessObjectTemplate of this BusinessObjectProvider.

Parameters:
context - the UserContext by which to read the Overview, never null
endpoint - the Endpoint at which the BusinessObjectTemplate is located, null for providers operating locally
name - the Name of the BusinessObjectTemplate for which to read the Overview, never null
Returns:
the read Overview, null in case none was found
Throws:
GPEngineException - in case the Overview could not be retrieved due to internal problems
GPInvocationException - in case the given UserContext or Name is invalid

resolveDescription

String resolveDescription(Locale locale)
                          throws GPInvocationException
Resolve the Description of this BusinessObjectProvider.

Parameters:
locale - the Locale to resolve the Description by
Returns:
the resolved Description, never null
Throws:
GPInvocationException - in case the given Locale is invalid

resolveTitle

String resolveTitle(Locale locale)
                    throws GPInvocationException
Resolve the Title of this BusinessObjectProvider.

Parameters:
locale - the Locale to resolve the Title by
Returns:
the resolved Title, never null
Throws:
GPInvocationException - in case the given Locale is invalid


Copyright 2009 SAP AG Complete Copyright Notice