com.anaptecs.spring.service.PathlessServiceProxy Maven / Gradle / Ivy
The newest version!
/*
* anaptecs GmbH, Ricarda-Huch-Str. 71, 72760 Reutlingen, Germany
*
* Copyright 2004 - 2019. All rights reserved.
*/
package com.anaptecs.spring.service;
import java.io.Serializable;
import java.lang.reflect.Method;
import com.anaptecs.jeaf.core.api.MessageConstants;
import com.anaptecs.jeaf.core.api.Service;
import com.anaptecs.jeaf.core.servicechannel.api.Command;
import com.anaptecs.jeaf.core.servicechannel.api.ServiceProxy;
import com.anaptecs.jeaf.core.spi.TransactionBehavior;
import com.anaptecs.jeaf.xfun.api.XFun;
import com.anaptecs.jeaf.xfun.api.errorhandling.ApplicationException;
import com.anaptecs.jeaf.xfun.api.errorhandling.JEAFSystemException;
import com.anaptecs.jeaf.xfun.api.trace.Trace;
/**
* ServiceProxy class for JEAF service PathlessService.
*/
public final class PathlessServiceProxy extends ServiceProxy implements PathlessService {
/**
* Serial version uid for the proxy class.
*/
private static final long serialVersionUID = 1L;
/**
* Initialize object.
*
* @param pTransactionBehavior Definition of transactional behavior. The Parameter must not be null.
*/
public PathlessServiceProxy( TransactionBehavior pTransactionBehavior ) {
super(PathlessService.class, pTransactionBehavior);
}
/**
* Generated proxy implementation for method {@link com.anaptecs.spring.service.PathlessService#getSomething}
*/
public String getSomething( ) {
try {
Command lCommand = new GetSomething_PathlessService_Command();
return (String) this.executeCommand(lCommand);
}
catch (ApplicationException e) {
throw new JEAFSystemException(e.getErrorCode(), e, e.getMessageParameters());
}
}
/**
* Generated proxy implementation for method {@link com.anaptecs.spring.service.PathlessService#processTechParam}
*/
public void processTechParam( MultiValuedHeaderBeanParam pHeaderBean ) {
try {
Command lCommand =
new ProcessTechParam_MultiValuedHeaderBeanParam_TechOnlyBeanParam_PathlessService_Command(pHeaderBean);
this.executeCommand(lCommand);
}
catch (ApplicationException e) {
throw new JEAFSystemException(e.getErrorCode(), e, e.getMessageParameters());
}
}
/**
* Generated proxy implementation for method {@link com.anaptecs.spring.service.PathlessService#testQueryBeanParam}
*/
public String testQueryBeanParam( DataTypesQueryBean pQuery ) {
try {
Command lCommand = new TestQueryBeanParam_DataTypesQueryBean_PathlessService_Command(pQuery);
return (String) this.executeCommand(lCommand);
}
catch (ApplicationException e) {
throw new JEAFSystemException(e.getErrorCode(), e, e.getMessageParameters());
}
}
}
/**
* Generated command class for service method "getSomething".
*/
final class GetSomething_PathlessService_Command extends Command {
/**
* Default serial version uid.
*/
private static final long serialVersionUID = 1L;
/**
* Constant for factor to convert nano seconds to milliseconds.
*/
private static final int MILLISECONDS = 1000 * 1000;
/**
* Constant describes the service method that is called by this proxy class.
*/
private static final Method SERVICE_METHOD;
/**
* Object array with all parameters that are passed to the service.
*/
private final Object[] parameters;
/**
* Initializer is used to get the method object describing the called service method only once.
*/
static {
try {
SERVICE_METHOD = PathlessService.class.getMethod("getSomething");
}
catch (NoSuchMethodException e) {
throw new JEAFSystemException(MessageConstants.SERVICE_METHOD_DOES_NOT_EXIST, e, PathlessService.class.getName(),
"getSomething(null)");
}
}
/**
* Initialize object. All parameters from method "getSomething" have to be passed as parameters to this command
* object.
*
*
*/
GetSomething_PathlessService_Command( ) {
super(PathlessService.class);
parameters = new Object[] {};
}
/**
* Method executes the service call represented by this command object via JEAFs service channel.
*
* @param pTargetService Reference to the service which should be called by this command. The parameter must not be
* null.
* @return Serializable Result object of the service call. Due to the fact that all returned objects of remote calls
* in Java (EJBs e.g.) have to be serializable services always have to return serializable objects no matter if it
* will be serialized or not. If a service method has no return type (void) then the method returns null. Service
* methods also may return null as return value.
*/
@Override
public Serializable execute( Service pTargetService ) {
// Execute service call.
PathlessService lService = (PathlessService) pTargetService;
// Trace service call.
Trace lTrace = XFun.getTrace();
lTrace.write(MessageConstants.EXECUTING_SERVICE_CALL, this.getCalledServiceMethod());
long lStartTime = System.nanoTime();
Serializable lResult = (Serializable) lService.getSomething();
// Calculate duration of service call in milliseconds
String lDuration = Long.toString((System.nanoTime() - lStartTime) / MILLISECONDS);
// Trace result of service call.
lTrace.write(MessageConstants.RETURNING_FROM_SERVICE_CALL, this.getCalledServiceMethod(), lDuration);
return lResult;
}
/**
* Method returns a method object describing the service method that will be called by this command object.
*
* @return {@link Method} Method object describing the called service method. The method never returns null.
*/
@Override
public final Method getServiceMethod( ) {
return SERVICE_METHOD;
}
/**
* Method returns all parameters that will be passed to the service.
*
* @return {@link Object} Object array with all parameters that will be passed to the service. The method may return
* an empty array in case that the method has no parameters.
*/
@Override
public Object[] getParameters( ) {
return parameters;
}
}
/**
* Generated command class for service method "processTechParam".
*/
final class ProcessTechParam_MultiValuedHeaderBeanParam_TechOnlyBeanParam_PathlessService_Command extends Command {
/**
* Default serial version uid.
*/
private static final long serialVersionUID = 1L;
/**
* Constant for factor to convert nano seconds to milliseconds.
*/
private static final int MILLISECONDS = 1000 * 1000;
/**
* Constant describes the service method that is called by this proxy class.
*/
private static final Method SERVICE_METHOD;
/**
* Object array with all parameters that are passed to the service.
*/
private final Object[] parameters;
/**
* Initializer is used to get the method object describing the called service method only once.
*/
static {
try {
SERVICE_METHOD = PathlessService.class.getMethod("processTechParam", MultiValuedHeaderBeanParam.class,
TechOnlyBeanParam.class);
}
catch (NoSuchMethodException e) {
throw new JEAFSystemException(MessageConstants.SERVICE_METHOD_DOES_NOT_EXIST, e, PathlessService.class.getName(),
"processTechParam(MultiValuedHeaderBeanParam.class, TechOnlyBeanParam.class)");
}
}
/**
* Attribute transports the method parameter "pHeaderBean" to the service implementation via the service channel.
*/
private final MultiValuedHeaderBeanParam headerBean;
/**
* Initialize object. All parameters from method "processTechParam" have to be passed as parameters to this command
* object.
*
* @param pHeaderBean MultiValuedHeaderBeanParam
* @param pTechContext TechOnlyBeanParam
*/
ProcessTechParam_MultiValuedHeaderBeanParam_TechOnlyBeanParam_PathlessService_Command(
MultiValuedHeaderBeanParam pHeaderBean ) {
super(PathlessService.class);
headerBean = pHeaderBean;
parameters = new Object[] { headerBean };
}
/**
* Method executes the service call represented by this command object via JEAFs service channel.
*
* @param pTargetService Reference to the service which should be called by this command. The parameter must not be
* null.
* @return Serializable Result object of the service call. Due to the fact that all returned objects of remote calls
* in Java (EJBs e.g.) have to be serializable services always have to return serializable objects no matter if it
* will be serialized or not. If a service method has no return type (void) then the method returns null. Service
* methods also may return null as return value.
*/
@Override
public Serializable execute( Service pTargetService ) {
// Execute service call.
PathlessService lService = (PathlessService) pTargetService;
// Trace service call.
Trace lTrace = XFun.getTrace();
lTrace.write(MessageConstants.EXECUTING_SERVICE_CALL, this.getCalledServiceMethod());
long lStartTime = System.nanoTime();
lService.processTechParam(headerBean);
// Calculate duration of service call in milliseconds
String lDuration = Long.toString((System.nanoTime() - lStartTime) / MILLISECONDS);
// Trace result of service call.
lTrace.write(MessageConstants.RETURNING_FROM_SERVICE_CALL, this.getCalledServiceMethod(), lDuration);
// Method has no return type thus the method returns null.
return null;
}
/**
* Method returns a method object describing the service method that will be called by this command object.
*
* @return {@link Method} Method object describing the called service method. The method never returns null.
*/
@Override
public final Method getServiceMethod( ) {
return SERVICE_METHOD;
}
/**
* Method returns all parameters that will be passed to the service.
*
* @return {@link Object} Object array with all parameters that will be passed to the service. The method may return
* an empty array in case that the method has no parameters.
*/
@Override
public Object[] getParameters( ) {
return parameters;
}
}
/**
* Generated command class for service method "testQueryBeanParam".
*/
final class TestQueryBeanParam_DataTypesQueryBean_PathlessService_Command extends Command {
/**
* Default serial version uid.
*/
private static final long serialVersionUID = 1L;
/**
* Constant for factor to convert nano seconds to milliseconds.
*/
private static final int MILLISECONDS = 1000 * 1000;
/**
* Constant describes the service method that is called by this proxy class.
*/
private static final Method SERVICE_METHOD;
/**
* Object array with all parameters that are passed to the service.
*/
private final Object[] parameters;
/**
* Initializer is used to get the method object describing the called service method only once.
*/
static {
try {
SERVICE_METHOD = PathlessService.class.getMethod("testQueryBeanParam", DataTypesQueryBean.class);
}
catch (NoSuchMethodException e) {
throw new JEAFSystemException(MessageConstants.SERVICE_METHOD_DOES_NOT_EXIST, e, PathlessService.class.getName(),
"testQueryBeanParam(DataTypesQueryBean.class)");
}
}
/**
* Attribute transports the method parameter "pQuery" to the service implementation via the service channel.
*/
private final DataTypesQueryBean query;
/**
* Initialize object. All parameters from method "testQueryBeanParam" have to be passed as parameters to this command
* object.
*
* @param pQuery DataTypesQueryBean
*/
TestQueryBeanParam_DataTypesQueryBean_PathlessService_Command( DataTypesQueryBean pQuery ) {
super(PathlessService.class);
query = pQuery;
parameters = new Object[] { query };
}
/**
* Method executes the service call represented by this command object via JEAFs service channel.
*
* @param pTargetService Reference to the service which should be called by this command. The parameter must not be
* null.
* @return Serializable Result object of the service call. Due to the fact that all returned objects of remote calls
* in Java (EJBs e.g.) have to be serializable services always have to return serializable objects no matter if it
* will be serialized or not. If a service method has no return type (void) then the method returns null. Service
* methods also may return null as return value.
*/
@Override
public Serializable execute( Service pTargetService ) {
// Execute service call.
PathlessService lService = (PathlessService) pTargetService;
// Trace service call.
Trace lTrace = XFun.getTrace();
lTrace.write(MessageConstants.EXECUTING_SERVICE_CALL, this.getCalledServiceMethod());
long lStartTime = System.nanoTime();
Serializable lResult = (Serializable) lService.testQueryBeanParam(query);
// Calculate duration of service call in milliseconds
String lDuration = Long.toString((System.nanoTime() - lStartTime) / MILLISECONDS);
// Trace result of service call.
lTrace.write(MessageConstants.RETURNING_FROM_SERVICE_CALL, this.getCalledServiceMethod(), lDuration);
return lResult;
}
/**
* Method returns a method object describing the service method that will be called by this command object.
*
* @return {@link Method} Method object describing the called service method. The method never returns null.
*/
@Override
public final Method getServiceMethod( ) {
return SERVICE_METHOD;
}
/**
* Method returns all parameters that will be passed to the service.
*
* @return {@link Object} Object array with all parameters that will be passed to the service. The method may return
* an empty array in case that the method has no parameters.
*/
@Override
public Object[] getParameters( ) {
return parameters;
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy