Class PushServicePlugin
- All Implemented Interfaces:
com.priint.pubserver.plugin.interfaces.PluginControl
Data input format is ConnectorPersistRemote.PushData, output format is
ServiceResult.
You may use either XML or JSON as serialization method.
In case of errors a ServerResult object will be returned along with the HTTP status code (in most cases 500) containing exception details.
- Since:
- 4.0.5
-
Field Summary
FieldsFields inherited from class com.priint.pubserver.entitydata.service.AbstractService
ERR_OBJECT_ALREADY_EXISTS, ERR_OBJECT_DOES_NOT_EXIST, httpServletRequest, httpServletResponse, logger, pluginLibrary, PUBLISHINGHUBDB_MAPPED_NAME, WILDCARD -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptioncallPushData(Map<String, Object> params) Commit pushdata via business method.com.priint.pubserver.webservice.ServiceResultclearCaches(String instance) Clear cache of PUBLISHINGHUBDB.getProposedEntities(String instance, String source) Get a list of proposed entities from the connector.com.priint.pubserver.webservice.ServiceResultpushCommit(String mappedName, String instance, String source, com.priint.pubserver.plugin.interfaces.ConnectorPersistRemote.PushData data) com.priint.pubserver.webservice.ServiceResultpushData(String mappedName, String instance, String source, com.priint.pubserver.plugin.interfaces.ConnectorPersistRemote.PushCommand command, com.priint.pubserver.plugin.interfaces.ConnectorPersistRemote.PushData data, boolean flattenStructure) Generic push method on a persistable connector.com.priint.pubserver.webservice.ServiceResultpushDelete(String mappedName, String instance, String source, com.priint.pubserver.plugin.interfaces.ConnectorPersistRemote.PushData data) Deletes data from the connector's data source.com.priint.pubserver.webservice.ServiceResultpushInsert(String mappedName, String instance, String source, com.priint.pubserver.plugin.interfaces.ConnectorPersistRemote.PushData data) Will create (insert/persist) all entitydata from the data input that are not already existing in the connector data source.com.priint.pubserver.webservice.ServiceResultpushSelect(String mappedName, String instance, String source, com.priint.pubserver.plugin.interfaces.ConnectorPersistRemote.PushData data) com.priint.pubserver.webservice.ServiceResultpushUpdate(String mappedName, String instance, String source, com.priint.pubserver.plugin.interfaces.ConnectorPersistRemote.PushData data) Will update (merge) all entitydata from the data input that are already existing in the connector data source.com.priint.pubserver.webservice.ServiceResultpushUpsert(String mappedName, String instance, String source, com.priint.pubserver.plugin.interfaces.ConnectorPersistRemote.PushData data) Methods inherited from class com.priint.pubserver.entitydata.service.AbstractService
clean, clean, connectorEntityFromRequest, connectorEntityFromRequest, connectorEntityFromRequest, connectorEntityFromRequest, contextFromListField, contextFromListField, fillUpdateItem, fillUpdateRecords, findMethod, fromEntityDataList, fromEntityDataList, lookupBean, lookupConnector, lookupEntityManager, lookupPersistConnector, lookupPlugin, lookupPluginByJndi, lookupPluginByPluginManager, lookupPublishingHubDBConnector, lookupPublishingManagementConnector, preProcessData, setConnectorEntity, setConnectorEntity, toEntityDataList, toEntityDataMap, toEntityDataRecord, toEntityDataRecord4Update, toEntityDataRecord4UpdateList, toEntityDataRecordList, toEntityItem, toEntityItem4UpdateList, toEntityItemForUpdate, toEntityItemList, toPushDataMethods inherited from class com.priint.pubserver.plugin.PluginControlDefault
afterCreateConfigurations, afterDeleteConfigurations, afterUpdateConfigurations, createConfiguration, deleteConfigurations, getSession, getSessionId, initInstance, loadServerConfig, ping, readSessionAttribute, updateConfigurations, writeSessionAttributeMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface com.priint.pubserver.plugin.interfaces.PluginControl
validateConfigurations
-
Field Details
-
MAPPED_NAME
- See Also:
-
-
Constructor Details
-
PushServicePlugin
public PushServicePlugin()
-
-
Method Details
-
pushData
public com.priint.pubserver.webservice.ServiceResult pushData(String mappedName, String instance, String source, com.priint.pubserver.plugin.interfaces.ConnectorPersistRemote.PushCommand command, com.priint.pubserver.plugin.interfaces.ConnectorPersistRemote.PushData data, boolean flattenStructure) throws com.priint.pubserver.exception.PubServerException Generic push method on a persistable connector.- Parameters:
mappedName- Mapped name of the connector.instance- Name of the connector instance. Different instances are typically associated with different data sources.source- Name of originator of the data. Currently not in use.command- Specifies the request as either create, read, update or delete operation.data- Data to be processed. Will try to process all entitydata objects referenced by identifier as specified by the command parameter.- Returns:
- Returns a
DataMapobject. - Throws:
com.priint.pubserver.exception.PubServerException- If anything fails HTTP error 500 will be send. Exception data will be returned to the client in aPubServerExceptionInfo.
-
pushInsert
public com.priint.pubserver.webservice.ServiceResult pushInsert(String mappedName, String instance, String source, com.priint.pubserver.plugin.interfaces.ConnectorPersistRemote.PushData data) throws com.priint.pubserver.exception.PubServerException Will create (insert/persist) all entitydata from the data input that are not already existing in the connector data source.- Parameters:
mappedName- connector mappedName (defaults to PublishingHubDbConnector)instance- Name of the connector instance. Different instances are typically associated with different data sources.source- ,data- Data to be processed. Will try to create all entitydata objects referenced by identifier.- Returns:
- Returns a
DataMapobject. - Throws:
ServiceException- If anything fails HTTP error 500 will be send. Exception data will be returned to the client in aPubServerExceptionInfo.com.priint.pubserver.exception.PubServerException
-
pushUpdate
public com.priint.pubserver.webservice.ServiceResult pushUpdate(String mappedName, String instance, String source, com.priint.pubserver.plugin.interfaces.ConnectorPersistRemote.PushData data) throws com.priint.pubserver.exception.PubServerException Will update (merge) all entitydata from the data input that are already existing in the connector data source.- Parameters:
mappedName- connector mappedName (defaults to PublishingHubDbConnector)instance- Name of the connector instance. Different instances are typically associated with different data sources.data- Data to be processed. Will try to update all entitydata objects referenced by identifier.- Returns:
- Returns a
DataMapobject. - Throws:
ServiceException- If anything fails HTTP error 500 will be send. Exception data will be returned to the client in aPubServerExceptionInfo.com.priint.pubserver.exception.PubServerException
-
pushDelete
public com.priint.pubserver.webservice.ServiceResult pushDelete(String mappedName, String instance, String source, com.priint.pubserver.plugin.interfaces.ConnectorPersistRemote.PushData data) throws com.priint.pubserver.exception.PubServerException Deletes data from the connector's data source.http://server:port/EntityDataService/connector/{instance}- Parameters:
mappedName- connector mappedName (defaults to PublishingHubDbConnector)instance- Name of the connector instance. Different instances are typically associated with different data sources.data- Data to be processed. Will try to delete all entitydata objects referenced by identifier.- Returns:
- Returns a
PushData2object. If case of successPushData2#isSuccess()attribute will be set to true. In case of failurePushData2#isSuccess()attribute will be set to false andPushData2#getErrorCode()andPushData2#getErrorMessage()attributes will contain information about the exception. - Throws:
ServiceExceptioncom.priint.pubserver.exception.PubServerException
-
getProposedEntities
public Object getProposedEntities(String instance, String source) throws com.priint.pubserver.exception.PubServerException Get a list of proposed entities from the connector.GET http://server:port/EntityDataService/push/model
Sample output:<proposedEntities>
<proposedEntity>
<entityType>Bucket</entityType>
<entityId>product</entityId>
<parentBucketEntityId>category</parentBucketEntityId>
<targetEntityId></targetEntityId>
<contentEntityId></contentEntityId>
<entityClass>com.priint.pubserver.entity.EntityBucket</entityClass>
</proposedEntity>
<proposedEntity>
<entityType>Cord</entityType>
<entityId>accessory</entityId>
<parentBucketEntityId>product</parentBucketEntityId>
<targetEntityId>product</targetEntityId>
<contentEntityId>accessory-content</contentEntityId>
<entityClass>com.priint.pubserver.entity.EntityCord</entityClass>
</proposedEntity>
</proposedEntities>
- Parameters:
instance- Name of the connector instance. Different instances are typically associated with different data sources.source- String identifying the origin of the data.- Returns:
- Returns a
ProposedEntitiesobject. - Throws:
ServiceExceptioncom.priint.pubserver.exception.PubServerException
-
callPushData
Commit pushdata via business method.The following params are supported.
- "connector": mappedName (defaults to PublishingHubDbConnector)
- "instance": Name of the connector instance. Different instances are typically associated with different data sources.
- "source": Name of originator of the data. Currently not in use.
- "command": Specifies the request as either create, read, update or delete operation.
ConnectorPersistRemote.PushCommand. - "data": Data to be processed. Will try to create all entitydata objects referenced by identifier.
- Parameters:
params-- Returns:
-
clearCaches
public com.priint.pubserver.webservice.ServiceResult clearCaches(String instance) throws com.priint.pubserver.exception.PubServerException Clear cache of PUBLISHINGHUBDB.Other connectors are not supported.
- Parameters:
instance-- Returns:
- Throws:
com.priint.pubserver.exception.PubServerException
-
pushUpsert
public com.priint.pubserver.webservice.ServiceResult pushUpsert(String mappedName, String instance, String source, com.priint.pubserver.plugin.interfaces.ConnectorPersistRemote.PushData data) throws com.priint.pubserver.exception.PubServerException - Throws:
com.priint.pubserver.exception.PubServerException
-
pushCommit
public com.priint.pubserver.webservice.ServiceResult pushCommit(String mappedName, String instance, String source, com.priint.pubserver.plugin.interfaces.ConnectorPersistRemote.PushData data) throws com.priint.pubserver.exception.PubServerException - Throws:
com.priint.pubserver.exception.PubServerException
-
pushSelect
public com.priint.pubserver.webservice.ServiceResult pushSelect(String mappedName, String instance, String source, com.priint.pubserver.plugin.interfaces.ConnectorPersistRemote.PushData data) throws com.priint.pubserver.exception.PubServerException - Throws:
com.priint.pubserver.exception.PubServerException
-