Interface DataProviderManagerRemote

All Superinterfaces:
PluginControl
All Known Subinterfaces:
DataProviderManagerLocal

public interface DataProviderManagerRemote extends PluginControl
Interface for a DataProvider Manager class.
Since:
4.0.0
  • Method Details

    • get

      <T> T get(String sessionId, String identifier, String entityModel, String entityIdentifier, String resultEntityIdentifier, String recordIdentifier, String recordGroupIdentifier, String searchstring, String assortment, String country, String language, String well, String publication, String targetgroup, String market, String documentId, Class<T> resultClass) throws DataProviderException
      Call the query and mapping method of a DataProvider to get data from a content system.
      Parameters:
      sessionId - current sessionId
      identifier - Identifier of the DataProvider
      entityModel - used EntityModel
      entityIdentifier - used Entity
      resultEntityIdentifier - Filter for result entity data (optional)
      recordIdentifier - Unique identifier of the entity used in the content system
      recordGroupIdentifier - Group identifier of the entity used in the content system (optional)
      searchstring - Search string for the query (optional)
      assortment - Context.assortment value
      country - Context.country value
      language - Context.language value
      well - Context.well value
      publication - ID or name of the publication
      targetgroup - Context.targetgroup value
      market - Context.market value
      documentId - publication ID of the document
      resultClass - Generic class sets the return class;
      Returns:
      List of data objects
      Throws:
      DataProviderException
    • get

      <T> T get(String sessionId, String identifier, String entityModel, String entityIdentifier, String resultEntityIdentifier, String recordIdentifier, String recordGroupIdentifier, String searchstring, String assortment, String country, String language, String well, String publication, String documentId, Class<T> resultClass) throws DataProviderException
      Call the query and mapping method of a DataProvider to get data from a content system.
      Parameters:
      sessionId - current sessionId
      identifier - Identifier of the DataProvider
      entityModel - used EntityModel
      entityIdentifier - used Entity
      resultEntityIdentifier - Filter for result entity data (optional)
      recordIdentifier - Unique identifier of the entity used in the content system
      recordGroupIdentifier - Group identifier of the entity used in the content system (optional)
      searchstring - Search string for the query (optional)
      assortment - Context.assortment value
      country - Context.country value
      language - Context.language value
      well - Context.well value
      publication - ID or name of the publication
      documentId - publication ID of the document
      resultClass - Generic class sets the return class;
      Returns:
      List of data objects
      Throws:
      DataProviderException
    • get

      <T> T get(String sessionId, String identifier, String entityModel, String entityIdentifier, String resultEntityIdentifier, String recordIdentifier, String recordGroupIdentifier, String searchstring, String assortment, String country, String language, String well, String publication, String targetgroup, String market, String documentId, Map<String,Object> parameters, Class<T> resultClass) throws DataProviderException
      Call the query and mapping method of a DataProvider to get data from a content system.

      This version is used from dynamic GUI. It has additional field which contains a map of parameters. These parameters are typically filled from search panels in UI.

      Parameters:
      sessionId - current sessionId
      identifier - Identifier of the DataProvider
      entityModel - used EntityModel
      entityIdentifier - used Entity
      resultEntityIdentifier - Filter for result entity data (optional)
      recordIdentifier - Unique identifier of the entity used in the content system
      recordGroupIdentifier - Group identifier of the entity used in the content system (optional)
      searchstring - Search string for the query (optional)
      assortment - Context.assortment value
      country - Context.country value
      language - Context.language value
      well - Context.well value
      publication - ID or name of the publication
      targetgroup - Context.targetgroup value
      market - Context.market value
      documentId - publication ID of the document
      parameters - Map of additional parameters (from UI or function variables)
      resultClass - Generic class sets the return class;
      Returns:
      List of data objects
      Throws:
      DataProviderException
    • set

      void set(String sessionId, String identifier, String entityModel, String entityIdentifier, String resultEntityIdentifier, String recordIdentifier, String recordGroupIdentifier, String searchstring, String assortment, String country, String language, String well, String publication, String targetgroup, String market, String documentId, String value) throws DataProviderException
      Call the mapping and update method of a DataProvider to write data to a content system.
      Parameters:
      sessionId - current sessionId
      identifier - Identifier of the DataProvider
      entityModel - used EntityModel
      entityIdentifier - used Entity
      resultEntityIdentifier - Filter for result entity data (optional)
      recordIdentifier - Unique identifier of the entity used in the content system
      recordGroupIdentifier - Group identifier of the entity used in the content system (optional)
      searchstring - Search string for the query (optional)
      assortment - Context.assortment value
      country - Context.country value
      language - Context.language value
      well - Context.well value
      publication - ID or name of the publication
      targetgroup - Context.targetgroup value
      market - Context.market value
      documentId - publication ID of the document
      value - Set this value
      Throws:
      DataProviderException
    • set

      void set(String sessionId, String identifier, String entityModel, String entityIdentifier, String resultEntityIdentifier, String recordIdentifier, String recordGroupIdentifier, String searchstring, String assortment, String country, String language, String well, String publication, String targetgroup, String market, String documentId, Map<String,Object> parameters, String value) throws DataProviderException
      Call the mapping and update method of a DataProvider to write data to a content system.
      Parameters:
      sessionId - current sessionId
      identifier - Identifier of the DataProvider
      entityModel - used EntityModel
      entityIdentifier - used Entity
      resultEntityIdentifier - Filter for result entity data (optional)
      recordIdentifier - Unique identifier of the entity used in the content system
      recordGroupIdentifier - Group identifier of the entity used in the content system (optional)
      searchstring - Search string for the query (optional)
      assortment - Context.assortment value
      country - Context.country value
      language - Context.language value
      well - Context.well value
      publication - ID or name of the publication
      targetgroup - Context.targetgroup value
      market - Context.market value
      documentId - publication ID of the document
      parameters - Map of additional parameters (from UI or function variables)
      value - Set this value
      Throws:
      DataProviderException
    • set

      void set(String sessionId, String identifier, String entityModel, String entityIdentifier, String resultEntityIdentifier, String recordIdentifier, String recordGroupIdentifier, String searchstring, String assortment, String country, String language, String well, String publication, String targetgroup, String market, String documentId, Map<String,Object> parameters, List<String> values) throws DataProviderException
      Call the mapping and update method of a DataProvider to write data to a content system.
      Parameters:
      sessionId - current sessionId
      identifier - Identifier of the DataProvider
      entityModel - used EntityModel
      entityIdentifier - used Entity
      resultEntityIdentifier - Filter for result entity data (optional)
      recordIdentifier - Unique identifier of the entity used in the content system
      recordGroupIdentifier - Group identifier of the entity used in the content system (optional)
      searchstring - Search string for the query (optional)
      assortment - Context.assortment value
      country - Context.country value
      language - Context.language value
      well - Context.well value
      publication - ID or name of the publication
      targetgroup - Context.targetgroup value
      market - Context.market value
      documentId - publication ID of the document
      parameters - Map of additional parameters (from UI or function variables)
      values - Set these values
      Throws:
      DataProviderException
    • getRegisteredDataProviders

      List<DataProvider> getRegisteredDataProviders()
      Returns the list of all registered DataProviders
      Returns:
      List of DataProvider
    • getDataProviderGetterReturnTypeArgument

      Class<?> getDataProviderGetterReturnTypeArgument(String identifier) throws PubServerException

      Gets the return type argument of the DataProvider getter method.

      Gets the return type argument of the DataProvider getter method. This is the type argument of the last method in the processing chain of this getter, i.e.: if a DataMapping method is defined, the type argument of the DataMapping return type is returned, otherwise the type argument of the DataQuery return type is returned.
      Note, that we support "simple" generics only (as this is the most common return type for getters), such as List<?> etc. rather than Map<?,?>, in other words: the first type argument is returned, subsequent arguments are ignored.
      Purpose of this method is, to provide easy access to this simplified information wherever required.

      Parameters:
      identifier - identifier of the DataProvider
      Returns:
      class of the FIRST return type argument or null, if the return type has no arguments
      Throws:
      PubServerException - if the DataProvider cannot be found, getter for this DataProvider is undefined, getter has neither query nor mapping method or the return type argument class cannot be loaded by the class loader.
    • getDataProviderGetterQueryReturnTypeArgument

      Class<?> getDataProviderGetterQueryReturnTypeArgument(String identifier) throws PubServerException

      Gets the return type argument of the DataProvider getter query method.

      Virtually same like getDataProviderGetterReturnTypeArgument(String), except that this method returns the type argument for the query method.

      Parameters:
      identifier - identifier of the DataProvider
      Returns:
      class of the FIRST return type argument or null, if the return type has no arguments
      Throws:
      PubServerException - if the DataProvider cannot be found, getter for this DataProvider is undefined, getter has neither query nor mapping method or the return type argument class cannot be loaded by the class loader.
    • getDataProviderGetterMappingReturnTypeArgument

      Class<?> getDataProviderGetterMappingReturnTypeArgument(String identifier) throws PubServerException

      Gets the return type argument of the DataProvider getter mapping method.

      Virtually same like getDataProviderGetterReturnTypeArgument(String), except that this method returns the type argument for the mapping method.

      Parameters:
      identifier - identifier of the DataProvider
      Returns:
      class of the FIRST return type argument or null, if the return type has no arguments
      Throws:
      PubServerException - if the DataProvider cannot be found, getter for this DataProvider is undefined, getter has neither query nor mapping method or the return type argument class cannot be loaded by the class loader.
    • getDataProviderByIdentifier

      DataProvider getDataProviderByIdentifier(String identifier) throws PubServerException
      Parameters:
      identifier -
      Returns:
      Throws:
      PubServerException
    • dataProviderIsAvailable

      boolean dataProviderIsAvailable(String identifier)

      Checks, whether a dataprovider exists and is available or not.

      Checks, whether a dataprovider specified by identifier exists or not.
      If any exception occurs during check, this method returns false. This doesn't necessarily mean, that this dataprovider doesn't exist, it could also be a hint for a general problem (e.g. session expired).

      Parameters:
      identifier - identifier of the dataprovider to check
      Returns:
      true, if the dataprovider exists and is available, false otherwise
    • dataProviderExists

      boolean dataProviderExists(String identifier) throws PubServerException

      Checks, whether a dataprovider exists or not.

      Checks, whether a dataprovider specified by identifier exists or not.
      Unlike dataProviderIsAvailable(String), this method will throw an Exception, if any error occurs during this check.

      Parameters:
      identifier - identifier of the dataprovider to check
      Returns:
      true, if the dataprovider exists, false otherwise
      Throws:
      PubServerException - on any unexpected exception during check