org.ccsds.moims.mo.common.directory.provider.DirectoryInheritanceSkeleton Maven / Gradle / Ivy
package org.ccsds.moims.mo.common.directory.provider;
/**
* Provider Inheritance skeleton for DirectoryInheritanceSkeleton service.
*/
public abstract class DirectoryInheritanceSkeleton implements org.ccsds.moims.mo.mal.provider.MALInteractionHandler, org.ccsds.moims.mo.common.directory.provider.DirectorySkeleton, org.ccsds.moims.mo.common.directory.provider.DirectoryHandler {
private org.ccsds.moims.mo.mal.provider.MALProviderSet providerSet = new org.ccsds.moims.mo.mal.provider.MALProviderSet(org.ccsds.moims.mo.common.directory.DirectoryHelper.DIRECTORY_SERVICE);
/**
* Implements the setSkeleton method of the handler interface but does nothing
* as this is the skeleton.
*
* @param skeleton Not used in the inheritance pattern (the skeleton is "this".
*/
public void setSkeleton(org.ccsds.moims.mo.common.directory.provider.DirectorySkeleton skeleton) {
// Not used in the inheritance pattern (the skeleton is 'this');
}
/**
* Adds the supplied MAL provider to the internal list of providers used for
* PubSub.
*
* @param provider The provider to be addded.
* @throws org.ccsds.moims.mo.mal.MALException If an error is detected.
*/
public void malInitialize(org.ccsds.moims.mo.mal.provider.MALProvider provider) throws org.ccsds.moims.mo.mal.MALException {
providerSet.addProvider(provider);
}
/**
* Removes the supplied MAL provider from the internal list of providers used
* for PubSub.
*
* @param provider The provider to be addded.
* @throws org.ccsds.moims.mo.mal.MALException If an error is detected.
*/
public void malFinalize(org.ccsds.moims.mo.mal.provider.MALProvider provider) throws org.ccsds.moims.mo.mal.MALException {
providerSet.removeProvider(provider);
}
/**
* Called by the provider MAL layer on reception of a message to handle the
* interaction.
*
* @param interaction The interaction object.
* @param body The message body.
* @throws org.ccsds.moims.mo.mal.MALException if there is a internal error.
* @throws org.ccsds.moims.mo.mal.MALInteractionException if there is a operation
* interaction error.
*/
public void handleSend(org.ccsds.moims.mo.mal.provider.MALInteraction interaction,
org.ccsds.moims.mo.mal.transport.MALMessageBody body) throws org.ccsds.moims.mo.mal.MALInteractionException, org.ccsds.moims.mo.mal.MALException {
int opNumber = interaction.getOperation().getNumber().getValue();
switch (opNumber) {
default:
throw new org.ccsds.moims.mo.mal.MALInteractionException(new org.ccsds.moims.mo.mal.UnsupportedOperationException(
org.ccsds.moims.mo.mal.provider.MALInteractionHandler.ERROR_MSG_UNSUPPORTED + opNumber));
}
}
/**
* Called by the provider MAL layer on reception of a message to handle the
* interaction.
*
* @param interaction The interaction object.
* @param body The message body.
* @throws org.ccsds.moims.mo.mal.MALException if there is a internal error.
* @throws org.ccsds.moims.mo.mal.MALInteractionException if there is a operation
* interaction error.
*/
public void handleSubmit(org.ccsds.moims.mo.mal.provider.MALSubmit interaction,
org.ccsds.moims.mo.mal.transport.MALMessageBody body) throws org.ccsds.moims.mo.mal.MALInteractionException, org.ccsds.moims.mo.mal.MALException {
int opNumber = interaction.getOperation().getNumber().getValue();
switch (opNumber) {
case org.ccsds.moims.mo.common.directory.DirectoryServiceInfo._WITHDRAWPROVIDER_OP_NUMBER:
withdrawProvider((body.getBodyElement(0, new org.ccsds.moims.mo.mal.structures.Union(Long.MAX_VALUE)) == null) ? null : ((org.ccsds.moims.mo.mal.structures.Union) body.getBodyElement(0, new org.ccsds.moims.mo.mal.structures.Union(Long.MAX_VALUE))).getLongValue(),
interaction);
interaction.sendAcknowledgement();
break;
default:
interaction.sendError(new org.ccsds.moims.mo.mal.UnsupportedOperationException(
org.ccsds.moims.mo.mal.provider.MALInteractionHandler.ERROR_MSG_UNSUPPORTED + opNumber));
throw new org.ccsds.moims.mo.mal.MALInteractionException(new org.ccsds.moims.mo.mal.UnsupportedOperationException(
org.ccsds.moims.mo.mal.provider.MALInteractionHandler.ERROR_MSG_UNSUPPORTED + opNumber));
}
}
/**
* Called by the provider MAL layer on reception of a message to handle the
* interaction.
*
* @param interaction The interaction object.
* @param body The message body.
* @throws org.ccsds.moims.mo.mal.MALException if there is a internal error.
* @throws org.ccsds.moims.mo.mal.MALInteractionException if there is a operation
* interaction error.
*/
public void handleRequest(org.ccsds.moims.mo.mal.provider.MALRequest interaction,
org.ccsds.moims.mo.mal.transport.MALMessageBody body) throws org.ccsds.moims.mo.mal.MALInteractionException, org.ccsds.moims.mo.mal.MALException {
int opNumber = interaction.getOperation().getNumber().getValue();
switch (opNumber) {
case org.ccsds.moims.mo.common.directory.DirectoryServiceInfo._LOOKUPPROVIDER_OP_NUMBER:
interaction.sendResponse(lookupProvider((org.ccsds.moims.mo.common.directory.structures.ServiceFilter) body.getBodyElement(0, new org.ccsds.moims.mo.common.directory.structures.ServiceFilter()),
interaction));
break;
case org.ccsds.moims.mo.common.directory.DirectoryServiceInfo._PUBLISHPROVIDER_OP_NUMBER:
org.ccsds.moims.mo.common.directory.body.PublishProviderResponse publishProviderRt = publishProvider((org.ccsds.moims.mo.common.directory.structures.PublishDetails) body.getBodyElement(0, new org.ccsds.moims.mo.common.directory.structures.PublishDetails()),
interaction);
interaction.sendResponse((publishProviderRt.getBodyElement0() == null) ? null : new org.ccsds.moims.mo.mal.structures.Union(publishProviderRt.getBodyElement0()), (publishProviderRt.getBodyElement1() == null) ? null : new org.ccsds.moims.mo.mal.structures.Union(publishProviderRt.getBodyElement1()));
break;
case org.ccsds.moims.mo.common.directory.DirectoryServiceInfo._GETSERVICEXML_OP_NUMBER:
interaction.sendResponse(getServiceXML((body.getBodyElement(0, new org.ccsds.moims.mo.mal.structures.Union(Long.MAX_VALUE)) == null) ? null : ((org.ccsds.moims.mo.mal.structures.Union) body.getBodyElement(0, new org.ccsds.moims.mo.mal.structures.Union(Long.MAX_VALUE))).getLongValue(),
interaction));
break;
default:
interaction.sendError(new org.ccsds.moims.mo.mal.UnsupportedOperationException(
org.ccsds.moims.mo.mal.provider.MALInteractionHandler.ERROR_MSG_UNSUPPORTED + opNumber));
throw new org.ccsds.moims.mo.mal.MALInteractionException(new org.ccsds.moims.mo.mal.UnsupportedOperationException(
org.ccsds.moims.mo.mal.provider.MALInteractionHandler.ERROR_MSG_UNSUPPORTED + opNumber));
}
}
/**
* Called by the provider MAL layer on reception of a message to handle the
* interaction.
*
* @param interaction The interaction object.
* @param body The message body.
* @throws org.ccsds.moims.mo.mal.MALException if there is a internal error.
* @throws org.ccsds.moims.mo.mal.MALInteractionException if there is a operation
* interaction error.
*/
public void handleInvoke(org.ccsds.moims.mo.mal.provider.MALInvoke interaction,
org.ccsds.moims.mo.mal.transport.MALMessageBody body) throws org.ccsds.moims.mo.mal.MALInteractionException, org.ccsds.moims.mo.mal.MALException {
int opNumber = interaction.getOperation().getNumber().getValue();
switch (opNumber) {
default:
interaction.sendError(new org.ccsds.moims.mo.mal.UnsupportedOperationException(
org.ccsds.moims.mo.mal.provider.MALInteractionHandler.ERROR_MSG_UNSUPPORTED + opNumber));
throw new org.ccsds.moims.mo.mal.MALInteractionException(new org.ccsds.moims.mo.mal.UnsupportedOperationException(
org.ccsds.moims.mo.mal.provider.MALInteractionHandler.ERROR_MSG_UNSUPPORTED + opNumber));
}
}
/**
* Called by the provider MAL layer on reception of a message to handle the
* interaction.
*
* @param interaction The interaction object.
* @param body The message body.
* @throws org.ccsds.moims.mo.mal.MALException if there is a internal error.
* @throws org.ccsds.moims.mo.mal.MALInteractionException if there is a operation
* interaction error.
*/
public void handleProgress(org.ccsds.moims.mo.mal.provider.MALProgress interaction,
org.ccsds.moims.mo.mal.transport.MALMessageBody body) throws org.ccsds.moims.mo.mal.MALInteractionException, org.ccsds.moims.mo.mal.MALException {
int opNumber = interaction.getOperation().getNumber().getValue();
switch (opNumber) {
default:
interaction.sendError(new org.ccsds.moims.mo.mal.UnsupportedOperationException(
org.ccsds.moims.mo.mal.provider.MALInteractionHandler.ERROR_MSG_UNSUPPORTED + opNumber));
throw new org.ccsds.moims.mo.mal.MALInteractionException(new org.ccsds.moims.mo.mal.UnsupportedOperationException(
org.ccsds.moims.mo.mal.provider.MALInteractionHandler.ERROR_MSG_UNSUPPORTED + opNumber));
}
}
}