All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.anaptecs.jeaf.services.usermanagement.UserManagementAdminServiceProxy Maven / Gradle / Ivy

There is a newer version: 1.8.0
Show newest version
/*
 * anaptecs GmbH, Ricarda-Huch-Str. 71, 72760 Reutlingen, Germany
 * 
 * Copyright 2004 - 2019. All rights reserved.
 */
package com.anaptecs.jeaf.services.usermanagement;

import java.io.Serializable;
import java.lang.reflect.Method;
import java.util.Set;

import com.anaptecs.jeaf.core.api.MessageConstants;
import com.anaptecs.jeaf.core.api.Service;
import com.anaptecs.jeaf.core.api.ServiceObjectID;
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 UserManagementAdminService.
 */
public final class UserManagementAdminServiceProxy extends ServiceProxy implements UserManagementAdminService {
  /**
   * 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 UserManagementAdminServiceProxy( TransactionBehavior pTransactionBehavior ) {
    super(UserManagementAdminService.class, pTransactionBehavior);
  }

  /**
   * Generated proxy implementation for method "createCountry".
   * 
   * Method creates a new country from the passed object. The method also creates a new state for every state object
   * that belongs to the passed country object. There must not already exist a country with the same name.
   */
  public Country createCountry( Country pCountry ) {
    try {
      Command lCommand = new CreateCountry_Country_UserManagementAdminService_Command(pCountry);
      return (Country) this.executeCommand(lCommand);
    }
    catch (ApplicationException e) {
      throw new JEAFSystemException(e.getErrorCode(), e, e.getMessageParameters());
    }
  }

  /**
   * Generated proxy implementation for method "getCountry".
   * 
   * Method returns the country with the passed service object id. A country with the passed id must exist.
   */
  public Country getCountry( ServiceObjectID pCountryID ) {
    try {
      Command lCommand = new GetCountry_ServiceObjectID_UserManagementAdminService_Command(pCountryID);
      return (Country) this.executeCommand(lCommand);
    }
    catch (ApplicationException e) {
      throw new JEAFSystemException(e.getErrorCode(), e, e.getMessageParameters());
    }
  }

  /**
   * Generated proxy implementation for method "deleteCountry".
   * 
   * Method deletes the passed country object. A country object can only be deleted if it is not referenced any more.
   */
  public void deleteCountry( Country pCountry ) {
    try {
      Command lCommand = new DeleteCountry_Country_UserManagementAdminService_Command(pCountry);
      this.executeCommand(lCommand);
    }
    catch (ApplicationException e) {
      throw new JEAFSystemException(e.getErrorCode(), e, e.getMessageParameters());
    }
  }

  /**
   * Generated proxy implementation for method "createState".
   * 
   * Method creates a new state from the passed object. As a state can not be on his own the reference to the country to
   * which it belongs has to be set. There must not already exists a state with the same name for the same country.
   */
  public State createState( State pState ) {
    try {
      Command lCommand = new CreateState_State_UserManagementAdminService_Command(pState);
      return (State) this.executeCommand(lCommand);
    }
    catch (ApplicationException e) {
      throw new JEAFSystemException(e.getErrorCode(), e, e.getMessageParameters());
    }
  }

  /**
   * Generated proxy implementation for method "getState".
   * 
   * Method returns the state with the passed id. A state object with the passed id must exist.
   */
  public State getState( ServiceObjectID pStateID ) {
    try {
      Command lCommand = new GetState_ServiceObjectID_UserManagementAdminService_Command(pStateID);
      return (State) this.executeCommand(lCommand);
    }
    catch (ApplicationException e) {
      throw new JEAFSystemException(e.getErrorCode(), e, e.getMessageParameters());
    }
  }

  /**
   * Generated proxy implementation for method "deleteState".
   * 
   * Method deletes the passed state object. A state object can only be deleted if it is not referenced any more.
   */
  public void deleteState( State pState ) {
    try {
      Command lCommand = new DeleteState_State_UserManagementAdminService_Command(pState);
      this.executeCommand(lCommand);
    }
    catch (ApplicationException e) {
      throw new JEAFSystemException(e.getErrorCode(), e, e.getMessageParameters());
    }
  }

  /**
   * Generated proxy implementation for method "createAddressType".
   * 
   * Method creates a new address type from the passed object. There must not already exist an address type with the
   * same type name. The method also creates all address subtypes that are referenced by the passed object.
   * 
   */
  public AddressType createAddressType( AddressType pAddressType ) {
    try {
      Command lCommand = new CreateAddressType_AddressType_UserManagementAdminService_Command(pAddressType);
      return (AddressType) this.executeCommand(lCommand);
    }
    catch (ApplicationException e) {
      throw new JEAFSystemException(e.getErrorCode(), e, e.getMessageParameters());
    }
  }

  /**
   * Generated proxy implementation for method "getAddressType".
   * 
   * Method returns the address type with the passed id. An address type object with the passed id has to exist.
   */
  public AddressType getAddressType( ServiceObjectID pAddressTypeID ) {
    try {
      Command lCommand = new GetAddressType_ServiceObjectID_UserManagementAdminService_Command(pAddressTypeID);
      return (AddressType) this.executeCommand(lCommand);
    }
    catch (ApplicationException e) {
      throw new JEAFSystemException(e.getErrorCode(), e, e.getMessageParameters());
    }
  }

  /**
   * Generated proxy implementation for method "deleteAddressType".
   * 
   * Method deletes the passed communication address type. A communication address type can only be deleted if it is not
   * referenced any more.
   */
  public void deleteAddressType( AddressType pAdressType ) {
    try {
      Command lCommand = new DeleteAddressType_AddressType_UserManagementAdminService_Command(pAdressType);
      this.executeCommand(lCommand);
    }
    catch (ApplicationException e) {
      throw new JEAFSystemException(e.getErrorCode(), e, e.getMessageParameters());
    }
  }

  /**
   * Generated proxy implementation for method "createAddressSubtype".
   * 
   * Method creates a new address subtype from the passed object. There must not already exist an address subtype with
   * the same type name for the same address type.
   */
  public AddressSubtype createAddressSubtype( AddressSubtype pAddressSubtype ) {
    try {
      Command lCommand = new CreateAddressSubtype_AddressSubtype_UserManagementAdminService_Command(pAddressSubtype);
      return (AddressSubtype) this.executeCommand(lCommand);
    }
    catch (ApplicationException e) {
      throw new JEAFSystemException(e.getErrorCode(), e, e.getMessageParameters());
    }
  }

  /**
   * Generated proxy implementation for method "getAddressSubtype".
   * 
   * Method returns the address subtype with the passed service object ID. If the object with the passed ID does not
   * exist an exception will be thrown.
   */
  public AddressSubtype getAddressSubtype( ServiceObjectID pAddressSubtypeID ) {
    try {
      Command lCommand = new GetAddressSubtype_ServiceObjectID_UserManagementAdminService_Command(pAddressSubtypeID);
      return (AddressSubtype) this.executeCommand(lCommand);
    }
    catch (ApplicationException e) {
      throw new JEAFSystemException(e.getErrorCode(), e, e.getMessageParameters());
    }
  }

  /**
   * Generated proxy implementation for method "deleteAddressSubtype".
   * 
   * Method deletes the address subtype with the passed service object id. If the object does not exist an exception
   * will be thrown.
   */
  public void deleteAddressSubtype( AddressSubtype pAddressSubtype ) {
    try {
      Command lCommand = new DeleteAddressSubtype_AddressSubtype_UserManagementAdminService_Command(pAddressSubtype);
      this.executeCommand(lCommand);
    }
    catch (ApplicationException e) {
      throw new JEAFSystemException(e.getErrorCode(), e, e.getMessageParameters());
    }
  }

  /**
   * Generated proxy implementation for method "importUserAccounts".
   * 
   * Method adds the passed userAccounts. The method will create an new entry in the database for every passed user
   * account object. To also setup all the role associations of the existing roleDefinitions, all roleDefinitions that
   * belong to the newly created UserAccount have to be set on each userAccount. The RoleDefinitions already have to
   * exist in the database and the passed userAccount object doesn't need a valid service object id. If a user account
   * with the same name already exist in the database it depends on the parameter pIgnoreExisting whether
   * the user account will be ignored or an exception will be thrown.
   */
  @SuppressWarnings("unchecked")
  public Set importUserAccounts( Set pUserAccounts, boolean pIgnoreExisting )
    throws UserManagementServiceApplicationException {
    try {
      Command lCommand =
          new ImportUserAccounts_UserAccount_Boolean_UserManagementAdminService_Command(pUserAccounts, pIgnoreExisting);
      return (Set) this.executeCommand(lCommand);
    }
    catch (UserManagementServiceApplicationException e) {
      throw e;
    }
    catch (ApplicationException e) {
      throw new JEAFSystemException(e.getErrorCode(), e, e.getMessageParameters());
    }
  }

  /**
   * Generated proxy implementation for method "createGroupType".
   * 
   * 
   */
  public GroupType createGroupType( GroupType pGroupType ) {
    try {
      Command lCommand = new CreateGroupType_GroupType_UserManagementAdminService_Command(pGroupType);
      return (GroupType) this.executeCommand(lCommand);
    }
    catch (ApplicationException e) {
      throw new JEAFSystemException(e.getErrorCode(), e, e.getMessageParameters());
    }
  }

  /**
   * Generated proxy implementation for method "getGroupType".
   * 
   * 
   */
  public GroupType getGroupType( ServiceObjectID pGroupTypeID ) {
    try {
      Command lCommand = new GetGroupType_ServiceObjectID_UserManagementAdminService_Command(pGroupTypeID);
      return (GroupType) this.executeCommand(lCommand);
    }
    catch (ApplicationException e) {
      throw new JEAFSystemException(e.getErrorCode(), e, e.getMessageParameters());
    }
  }

  /**
   * Generated proxy implementation for method "deleteGroupType".
   * 
   * 
   */
  public void deleteGroupType( GroupType pGroupType ) {
    try {
      Command lCommand = new DeleteGroupType_GroupType_UserManagementAdminService_Command(pGroupType);
      this.executeCommand(lCommand);
    }
    catch (ApplicationException e) {
      throw new JEAFSystemException(e.getErrorCode(), e, e.getMessageParameters());
    }
  }

  /**
   * Generated proxy implementation for method "createOrganizationUnitType".
   * 
   * Method creates a organization unit type.
   */
  public OrganizationUnitType createOrganizationUnitType( OrganizationUnitType pOrganizationUnitType ) {
    try {
      Command lCommand =
          new CreateOrganizationUnitType_OrganizationUnitType_UserManagementAdminService_Command(pOrganizationUnitType);
      return (OrganizationUnitType) this.executeCommand(lCommand);
    }
    catch (ApplicationException e) {
      throw new JEAFSystemException(e.getErrorCode(), e, e.getMessageParameters());
    }
  }

  /**
   * Generated proxy implementation for method "getOrganizationUnitType".
   * 
   * Method returns the organization unit type with the given service object id. The method never returns null.
   */
  public OrganizationUnitType getOrganizationUnitType( ServiceObjectID pOrganizationUnitTypeId ) {
    try {
      Command lCommand =
          new GetOrganizationUnitType_ServiceObjectID_UserManagementAdminService_Command(pOrganizationUnitTypeId);
      return (OrganizationUnitType) this.executeCommand(lCommand);
    }
    catch (ApplicationException e) {
      throw new JEAFSystemException(e.getErrorCode(), e, e.getMessageParameters());
    }
  }

  /**
   * Generated proxy implementation for method "deleteOrganizationUnitType".
   * 
   * Method deletes the given organization unit type.
   */
  public void deleteOrganizationUnitType( OrganizationUnitType pOrganizationUnitType ) {
    try {
      Command lCommand =
          new DeleteOrganizationUnitType_OrganizationUnitType_UserManagementAdminService_Command(pOrganizationUnitType);
      this.executeCommand(lCommand);
    }
    catch (ApplicationException e) {
      throw new JEAFSystemException(e.getErrorCode(), e, e.getMessageParameters());
    }
  }

  /**
   * Generated proxy implementation for method "createIdentityProvider".
   * 
   * Method creates a new identity provider based on the passed service object. If the passed identity provider is
   * marked as default identity provider then the existing default identity provider will be replaced by this one.
   */
  public IdentityProvider createIdentityProvider( IdentityProvider pIdentityProvider, String pPassword ) {
    try {
      Command lCommand = new CreateIdentityProvider_IdentityProvider_String_UserManagementAdminService_Command(
          pIdentityProvider, pPassword);
      return (IdentityProvider) this.executeCommand(lCommand);
    }
    catch (ApplicationException e) {
      throw new JEAFSystemException(e.getErrorCode(), e, e.getMessageParameters());
    }
  }
}

/**
 * Generated command class for service method "createCountry".
 */
final class CreateCountry_Country_UserManagementAdminService_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 = UserManagementAdminService.class.getMethod("createCountry", Country.class);
    }
    catch (NoSuchMethodException e) {
      throw new JEAFSystemException(MessageConstants.SERVICE_METHOD_DOES_NOT_EXIST, e,
          UserManagementAdminService.class.getName(), "createCountry(Country.class)");
    }
  }

  /**
   * Attribute transports the method parameter "pCountry" to the service implementation via the service channel.
   */
  private final Country country;

  /**
   * Initialize object. All parameters from method "createCountry" have to be passed as parameters to this command
   * object.
   * 
   * @param pCountry Country
   */
  CreateCountry_Country_UserManagementAdminService_Command( Country pCountry ) {
    super(UserManagementAdminService.class);
    country = pCountry;
    parameters = new Object[] { country };
  }

  /**
   * 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.
    UserManagementAdminService lService = (UserManagementAdminService) pTargetService;
    // Trace service call.
    Trace lTrace = XFun.getTrace();
    lTrace.write(MessageConstants.EXECUTING_SERVICE_CALL, this.getCalledServiceMethod());
    long lStartTime = System.nanoTime();
    Serializable lResult = (Serializable) lService.createCountry(country);
    // 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 "getCountry".
 */
final class GetCountry_ServiceObjectID_UserManagementAdminService_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 = UserManagementAdminService.class.getMethod("getCountry", ServiceObjectID.class);
    }
    catch (NoSuchMethodException e) {
      throw new JEAFSystemException(MessageConstants.SERVICE_METHOD_DOES_NOT_EXIST, e,
          UserManagementAdminService.class.getName(), "getCountry(ServiceObjectID.class)");
    }
  }

  /**
   * Attribute transports the method parameter "pCountryID" to the service implementation via the service channel.
   */
  private final ServiceObjectID countryID;

  /**
   * Initialize object. All parameters from method "getCountry" have to be passed as parameters to this command object.
   * 
   * @param pCountryID ServiceObjectID
   */
  GetCountry_ServiceObjectID_UserManagementAdminService_Command( ServiceObjectID pCountryID ) {
    super(UserManagementAdminService.class);
    countryID = pCountryID;
    parameters = new Object[] { countryID };
  }

  /**
   * 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.
    UserManagementAdminService lService = (UserManagementAdminService) pTargetService;
    // Trace service call.
    Trace lTrace = XFun.getTrace();
    lTrace.write(MessageConstants.EXECUTING_SERVICE_CALL, this.getCalledServiceMethod());
    long lStartTime = System.nanoTime();
    Serializable lResult = (Serializable) lService.getCountry(countryID);
    // 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 "deleteCountry".
 */
final class DeleteCountry_Country_UserManagementAdminService_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 = UserManagementAdminService.class.getMethod("deleteCountry", Country.class);
    }
    catch (NoSuchMethodException e) {
      throw new JEAFSystemException(MessageConstants.SERVICE_METHOD_DOES_NOT_EXIST, e,
          UserManagementAdminService.class.getName(), "deleteCountry(Country.class)");
    }
  }

  /**
   * Attribute transports the method parameter "pCountry" to the service implementation via the service channel.
   */
  private final Country country;

  /**
   * Initialize object. All parameters from method "deleteCountry" have to be passed as parameters to this command
   * object.
   * 
   * @param pCountry Country
   */
  DeleteCountry_Country_UserManagementAdminService_Command( Country pCountry ) {
    super(UserManagementAdminService.class);
    country = pCountry;
    parameters = new Object[] { country };
  }

  /**
   * 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.
    UserManagementAdminService lService = (UserManagementAdminService) pTargetService;
    // Trace service call.
    Trace lTrace = XFun.getTrace();
    lTrace.write(MessageConstants.EXECUTING_SERVICE_CALL, this.getCalledServiceMethod());
    long lStartTime = System.nanoTime();
    lService.deleteCountry(country);
    // 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 "createState".
 */
final class CreateState_State_UserManagementAdminService_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 = UserManagementAdminService.class.getMethod("createState", State.class);
    }
    catch (NoSuchMethodException e) {
      throw new JEAFSystemException(MessageConstants.SERVICE_METHOD_DOES_NOT_EXIST, e,
          UserManagementAdminService.class.getName(), "createState(State.class)");
    }
  }

  /**
   * Attribute transports the method parameter "pState" to the service implementation via the service channel.
   */
  private final State state;

  /**
   * Initialize object. All parameters from method "createState" have to be passed as parameters to this command object.
   * 
   * @param pState State
   */
  CreateState_State_UserManagementAdminService_Command( State pState ) {
    super(UserManagementAdminService.class);
    state = pState;
    parameters = new Object[] { state };
  }

  /**
   * 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.
    UserManagementAdminService lService = (UserManagementAdminService) pTargetService;
    // Trace service call.
    Trace lTrace = XFun.getTrace();
    lTrace.write(MessageConstants.EXECUTING_SERVICE_CALL, this.getCalledServiceMethod());
    long lStartTime = System.nanoTime();
    Serializable lResult = (Serializable) lService.createState(state);
    // 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 "getState".
 */
final class GetState_ServiceObjectID_UserManagementAdminService_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 = UserManagementAdminService.class.getMethod("getState", ServiceObjectID.class);
    }
    catch (NoSuchMethodException e) {
      throw new JEAFSystemException(MessageConstants.SERVICE_METHOD_DOES_NOT_EXIST, e,
          UserManagementAdminService.class.getName(), "getState(ServiceObjectID.class)");
    }
  }

  /**
   * Attribute transports the method parameter "pStateID" to the service implementation via the service channel.
   */
  private final ServiceObjectID stateID;

  /**
   * Initialize object. All parameters from method "getState" have to be passed as parameters to this command object.
   * 
   * @param pStateID ServiceObjectID
   */
  GetState_ServiceObjectID_UserManagementAdminService_Command( ServiceObjectID pStateID ) {
    super(UserManagementAdminService.class);
    stateID = pStateID;
    parameters = new Object[] { stateID };
  }

  /**
   * 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.
    UserManagementAdminService lService = (UserManagementAdminService) pTargetService;
    // Trace service call.
    Trace lTrace = XFun.getTrace();
    lTrace.write(MessageConstants.EXECUTING_SERVICE_CALL, this.getCalledServiceMethod());
    long lStartTime = System.nanoTime();
    Serializable lResult = (Serializable) lService.getState(stateID);
    // 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 "deleteState".
 */
final class DeleteState_State_UserManagementAdminService_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 = UserManagementAdminService.class.getMethod("deleteState", State.class);
    }
    catch (NoSuchMethodException e) {
      throw new JEAFSystemException(MessageConstants.SERVICE_METHOD_DOES_NOT_EXIST, e,
          UserManagementAdminService.class.getName(), "deleteState(State.class)");
    }
  }

  /**
   * Attribute transports the method parameter "pState" to the service implementation via the service channel.
   */
  private final State state;

  /**
   * Initialize object. All parameters from method "deleteState" have to be passed as parameters to this command object.
   * 
   * @param pState State
   */
  DeleteState_State_UserManagementAdminService_Command( State pState ) {
    super(UserManagementAdminService.class);
    state = pState;
    parameters = new Object[] { state };
  }

  /**
   * 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.
    UserManagementAdminService lService = (UserManagementAdminService) pTargetService;
    // Trace service call.
    Trace lTrace = XFun.getTrace();
    lTrace.write(MessageConstants.EXECUTING_SERVICE_CALL, this.getCalledServiceMethod());
    long lStartTime = System.nanoTime();
    lService.deleteState(state);
    // 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 "createAddressType".
 */
final class CreateAddressType_AddressType_UserManagementAdminService_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 = UserManagementAdminService.class.getMethod("createAddressType", AddressType.class);
    }
    catch (NoSuchMethodException e) {
      throw new JEAFSystemException(MessageConstants.SERVICE_METHOD_DOES_NOT_EXIST, e,
          UserManagementAdminService.class.getName(), "createAddressType(AddressType.class)");
    }
  }

  /**
   * Attribute transports the method parameter "pAddressType" to the service implementation via the service channel.
   */
  private final AddressType addressType;

  /**
   * Initialize object. All parameters from method "createAddressType" have to be passed as parameters to this command
   * object.
   * 
   * @param pAddressType AddressType
   */
  CreateAddressType_AddressType_UserManagementAdminService_Command( AddressType pAddressType ) {
    super(UserManagementAdminService.class);
    addressType = pAddressType;
    parameters = new Object[] { addressType };
  }

  /**
   * 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.
    UserManagementAdminService lService = (UserManagementAdminService) pTargetService;
    // Trace service call.
    Trace lTrace = XFun.getTrace();
    lTrace.write(MessageConstants.EXECUTING_SERVICE_CALL, this.getCalledServiceMethod());
    long lStartTime = System.nanoTime();
    Serializable lResult = (Serializable) lService.createAddressType(addressType);
    // 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 "getAddressType".
 */
final class GetAddressType_ServiceObjectID_UserManagementAdminService_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 = UserManagementAdminService.class.getMethod("getAddressType", ServiceObjectID.class);
    }
    catch (NoSuchMethodException e) {
      throw new JEAFSystemException(MessageConstants.SERVICE_METHOD_DOES_NOT_EXIST, e,
          UserManagementAdminService.class.getName(), "getAddressType(ServiceObjectID.class)");
    }
  }

  /**
   * Attribute transports the method parameter "pAddressTypeID" to the service implementation via the service channel.
   */
  private final ServiceObjectID addressTypeID;

  /**
   * Initialize object. All parameters from method "getAddressType" have to be passed as parameters to this command
   * object.
   * 
   * @param pAddressTypeID ServiceObjectID
   */
  GetAddressType_ServiceObjectID_UserManagementAdminService_Command( ServiceObjectID pAddressTypeID ) {
    super(UserManagementAdminService.class);
    addressTypeID = pAddressTypeID;
    parameters = new Object[] { addressTypeID };
  }

  /**
   * 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.
    UserManagementAdminService lService = (UserManagementAdminService) pTargetService;
    // Trace service call.
    Trace lTrace = XFun.getTrace();
    lTrace.write(MessageConstants.EXECUTING_SERVICE_CALL, this.getCalledServiceMethod());
    long lStartTime = System.nanoTime();
    Serializable lResult = (Serializable) lService.getAddressType(addressTypeID);
    // 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 "deleteAddressType".
 */
final class DeleteAddressType_AddressType_UserManagementAdminService_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 = UserManagementAdminService.class.getMethod("deleteAddressType", AddressType.class);
    }
    catch (NoSuchMethodException e) {
      throw new JEAFSystemException(MessageConstants.SERVICE_METHOD_DOES_NOT_EXIST, e,
          UserManagementAdminService.class.getName(), "deleteAddressType(AddressType.class)");
    }
  }

  /**
   * Attribute transports the method parameter "pAdressType" to the service implementation via the service channel.
   */
  private final AddressType adressType;

  /**
   * Initialize object. All parameters from method "deleteAddressType" have to be passed as parameters to this command
   * object.
   * 
   * @param pAdressType AddressType
   */
  DeleteAddressType_AddressType_UserManagementAdminService_Command( AddressType pAdressType ) {
    super(UserManagementAdminService.class);
    adressType = pAdressType;
    parameters = new Object[] { adressType };
  }

  /**
   * 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.
    UserManagementAdminService lService = (UserManagementAdminService) pTargetService;
    // Trace service call.
    Trace lTrace = XFun.getTrace();
    lTrace.write(MessageConstants.EXECUTING_SERVICE_CALL, this.getCalledServiceMethod());
    long lStartTime = System.nanoTime();
    lService.deleteAddressType(adressType);
    // 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 "createAddressSubtype".
 */
final class CreateAddressSubtype_AddressSubtype_UserManagementAdminService_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 = UserManagementAdminService.class.getMethod("createAddressSubtype", AddressSubtype.class);
    }
    catch (NoSuchMethodException e) {
      throw new JEAFSystemException(MessageConstants.SERVICE_METHOD_DOES_NOT_EXIST, e,
          UserManagementAdminService.class.getName(), "createAddressSubtype(AddressSubtype.class)");
    }
  }

  /**
   * Attribute transports the method parameter "pAddressSubtype" to the service implementation via the service channel.
   */
  private final AddressSubtype addressSubtype;

  /**
   * Initialize object. All parameters from method "createAddressSubtype" have to be passed as parameters to this
   * command object.
   * 
   * @param pAddressSubtype AddressSubtype
   */
  CreateAddressSubtype_AddressSubtype_UserManagementAdminService_Command( AddressSubtype pAddressSubtype ) {
    super(UserManagementAdminService.class);
    addressSubtype = pAddressSubtype;
    parameters = new Object[] { addressSubtype };
  }

  /**
   * 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.
    UserManagementAdminService lService = (UserManagementAdminService) pTargetService;
    // Trace service call.
    Trace lTrace = XFun.getTrace();
    lTrace.write(MessageConstants.EXECUTING_SERVICE_CALL, this.getCalledServiceMethod());
    long lStartTime = System.nanoTime();
    Serializable lResult = (Serializable) lService.createAddressSubtype(addressSubtype);
    // 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 "getAddressSubtype".
 */
final class GetAddressSubtype_ServiceObjectID_UserManagementAdminService_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 = UserManagementAdminService.class.getMethod("getAddressSubtype", ServiceObjectID.class);
    }
    catch (NoSuchMethodException e) {
      throw new JEAFSystemException(MessageConstants.SERVICE_METHOD_DOES_NOT_EXIST, e,
          UserManagementAdminService.class.getName(), "getAddressSubtype(ServiceObjectID.class)");
    }
  }

  /**
   * Attribute transports the method parameter "pAddressSubtypeID" to the service implementation via the service
   * channel.
   */
  private final ServiceObjectID addressSubtypeID;

  /**
   * Initialize object. All parameters from method "getAddressSubtype" have to be passed as parameters to this command
   * object.
   * 
   * @param pAddressSubtypeID ServiceObjectID
   */
  GetAddressSubtype_ServiceObjectID_UserManagementAdminService_Command( ServiceObjectID pAddressSubtypeID ) {
    super(UserManagementAdminService.class);
    addressSubtypeID = pAddressSubtypeID;
    parameters = new Object[] { addressSubtypeID };
  }

  /**
   * 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.
    UserManagementAdminService lService = (UserManagementAdminService) pTargetService;
    // Trace service call.
    Trace lTrace = XFun.getTrace();
    lTrace.write(MessageConstants.EXECUTING_SERVICE_CALL, this.getCalledServiceMethod());
    long lStartTime = System.nanoTime();
    Serializable lResult = (Serializable) lService.getAddressSubtype(addressSubtypeID);
    // 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 "deleteAddressSubtype".
 */
final class DeleteAddressSubtype_AddressSubtype_UserManagementAdminService_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 = UserManagementAdminService.class.getMethod("deleteAddressSubtype", AddressSubtype.class);
    }
    catch (NoSuchMethodException e) {
      throw new JEAFSystemException(MessageConstants.SERVICE_METHOD_DOES_NOT_EXIST, e,
          UserManagementAdminService.class.getName(), "deleteAddressSubtype(AddressSubtype.class)");
    }
  }

  /**
   * Attribute transports the method parameter "pAddressSubtype" to the service implementation via the service channel.
   */
  private final AddressSubtype addressSubtype;

  /**
   * Initialize object. All parameters from method "deleteAddressSubtype" have to be passed as parameters to this
   * command object.
   * 
   * @param pAddressSubtype AddressSubtype
   */
  DeleteAddressSubtype_AddressSubtype_UserManagementAdminService_Command( AddressSubtype pAddressSubtype ) {
    super(UserManagementAdminService.class);
    addressSubtype = pAddressSubtype;
    parameters = new Object[] { addressSubtype };
  }

  /**
   * 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.
    UserManagementAdminService lService = (UserManagementAdminService) pTargetService;
    // Trace service call.
    Trace lTrace = XFun.getTrace();
    lTrace.write(MessageConstants.EXECUTING_SERVICE_CALL, this.getCalledServiceMethod());
    long lStartTime = System.nanoTime();
    lService.deleteAddressSubtype(addressSubtype);
    // 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 "importUserAccounts".
 */
final class ImportUserAccounts_UserAccount_Boolean_UserManagementAdminService_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 = UserManagementAdminService.class.getMethod("importUserAccounts", Set.class, boolean.class);
    }
    catch (NoSuchMethodException e) {
      throw new JEAFSystemException(MessageConstants.SERVICE_METHOD_DOES_NOT_EXIST, e,
          UserManagementAdminService.class.getName(), "importUserAccounts(Set.class, boolean.class)");
    }
  }

  /**
   * Attribute transports the method parameter "pUserAccounts" to the service implementation via the service channel.
   */
  private final Set userAccounts;

  /**
   * Attribute transports the method parameter "pIgnoreExisting" to the service implementation via the service channel.
   */
  private final boolean ignoreExisting;

  /**
   * Initialize object. All parameters from method "importUserAccounts" have to be passed as parameters to this command
   * object.
   * 
   * @param pUserAccounts Set
   * @param pIgnoreExisting boolean
   */
  ImportUserAccounts_UserAccount_Boolean_UserManagementAdminService_Command( Set pUserAccounts,
      boolean pIgnoreExisting ) {
    super(UserManagementAdminService.class);
    userAccounts = pUserAccounts;
    ignoreExisting = pIgnoreExisting;
    parameters = new Object[] { userAccounts, ignoreExisting };
  }

  /**
   * 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 ) throws UserManagementServiceApplicationException {
    // Execute service call.
    UserManagementAdminService lService = (UserManagementAdminService) pTargetService;
    // Trace service call.
    Trace lTrace = XFun.getTrace();
    lTrace.write(MessageConstants.EXECUTING_SERVICE_CALL, this.getCalledServiceMethod());
    long lStartTime = System.nanoTime();
    Serializable lResult = (Serializable) lService.importUserAccounts(userAccounts, ignoreExisting);
    // 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 "createGroupType".
 */
final class CreateGroupType_GroupType_UserManagementAdminService_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 = UserManagementAdminService.class.getMethod("createGroupType", GroupType.class);
    }
    catch (NoSuchMethodException e) {
      throw new JEAFSystemException(MessageConstants.SERVICE_METHOD_DOES_NOT_EXIST, e,
          UserManagementAdminService.class.getName(), "createGroupType(GroupType.class)");
    }
  }

  /**
   * Attribute transports the method parameter "pGroupType" to the service implementation via the service channel.
   */
  private final GroupType groupType;

  /**
   * Initialize object. All parameters from method "createGroupType" have to be passed as parameters to this command
   * object.
   * 
   * @param pGroupType GroupType
   */
  CreateGroupType_GroupType_UserManagementAdminService_Command( GroupType pGroupType ) {
    super(UserManagementAdminService.class);
    groupType = pGroupType;
    parameters = new Object[] { groupType };
  }

  /**
   * 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.
    UserManagementAdminService lService = (UserManagementAdminService) pTargetService;
    // Trace service call.
    Trace lTrace = XFun.getTrace();
    lTrace.write(MessageConstants.EXECUTING_SERVICE_CALL, this.getCalledServiceMethod());
    long lStartTime = System.nanoTime();
    Serializable lResult = (Serializable) lService.createGroupType(groupType);
    // 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 "getGroupType".
 */
final class GetGroupType_ServiceObjectID_UserManagementAdminService_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 = UserManagementAdminService.class.getMethod("getGroupType", ServiceObjectID.class);
    }
    catch (NoSuchMethodException e) {
      throw new JEAFSystemException(MessageConstants.SERVICE_METHOD_DOES_NOT_EXIST, e,
          UserManagementAdminService.class.getName(), "getGroupType(ServiceObjectID.class)");
    }
  }

  /**
   * Attribute transports the method parameter "pGroupTypeID" to the service implementation via the service channel.
   */
  private final ServiceObjectID groupTypeID;

  /**
   * Initialize object. All parameters from method "getGroupType" have to be passed as parameters to this command
   * object.
   * 
   * @param pGroupTypeID ServiceObjectID
   */
  GetGroupType_ServiceObjectID_UserManagementAdminService_Command( ServiceObjectID pGroupTypeID ) {
    super(UserManagementAdminService.class);
    groupTypeID = pGroupTypeID;
    parameters = new Object[] { groupTypeID };
  }

  /**
   * 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.
    UserManagementAdminService lService = (UserManagementAdminService) pTargetService;
    // Trace service call.
    Trace lTrace = XFun.getTrace();
    lTrace.write(MessageConstants.EXECUTING_SERVICE_CALL, this.getCalledServiceMethod());
    long lStartTime = System.nanoTime();
    Serializable lResult = (Serializable) lService.getGroupType(groupTypeID);
    // 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 "deleteGroupType".
 */
final class DeleteGroupType_GroupType_UserManagementAdminService_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 = UserManagementAdminService.class.getMethod("deleteGroupType", GroupType.class);
    }
    catch (NoSuchMethodException e) {
      throw new JEAFSystemException(MessageConstants.SERVICE_METHOD_DOES_NOT_EXIST, e,
          UserManagementAdminService.class.getName(), "deleteGroupType(GroupType.class)");
    }
  }

  /**
   * Attribute transports the method parameter "pGroupType" to the service implementation via the service channel.
   */
  private final GroupType groupType;

  /**
   * Initialize object. All parameters from method "deleteGroupType" have to be passed as parameters to this command
   * object.
   * 
   * @param pGroupType GroupType
   */
  DeleteGroupType_GroupType_UserManagementAdminService_Command( GroupType pGroupType ) {
    super(UserManagementAdminService.class);
    groupType = pGroupType;
    parameters = new Object[] { groupType };
  }

  /**
   * 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.
    UserManagementAdminService lService = (UserManagementAdminService) pTargetService;
    // Trace service call.
    Trace lTrace = XFun.getTrace();
    lTrace.write(MessageConstants.EXECUTING_SERVICE_CALL, this.getCalledServiceMethod());
    long lStartTime = System.nanoTime();
    lService.deleteGroupType(groupType);
    // 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 "createOrganizationUnitType".
 */
final class CreateOrganizationUnitType_OrganizationUnitType_UserManagementAdminService_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 =
          UserManagementAdminService.class.getMethod("createOrganizationUnitType", OrganizationUnitType.class);
    }
    catch (NoSuchMethodException e) {
      throw new JEAFSystemException(MessageConstants.SERVICE_METHOD_DOES_NOT_EXIST, e,
          UserManagementAdminService.class.getName(), "createOrganizationUnitType(OrganizationUnitType.class)");
    }
  }

  /**
   * Attribute transports the method parameter "pOrganizationUnitType" to the service implementation via the service
   * channel.
   */
  private final OrganizationUnitType organizationUnitType;

  /**
   * Initialize object. All parameters from method "createOrganizationUnitType" have to be passed as parameters to this
   * command object.
   * 
   * @param pOrganizationUnitType OrganizationUnitType
   */
  CreateOrganizationUnitType_OrganizationUnitType_UserManagementAdminService_Command(
      OrganizationUnitType pOrganizationUnitType ) {
    super(UserManagementAdminService.class);
    organizationUnitType = pOrganizationUnitType;
    parameters = new Object[] { organizationUnitType };
  }

  /**
   * 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.
    UserManagementAdminService lService = (UserManagementAdminService) pTargetService;
    // Trace service call.
    Trace lTrace = XFun.getTrace();
    lTrace.write(MessageConstants.EXECUTING_SERVICE_CALL, this.getCalledServiceMethod());
    long lStartTime = System.nanoTime();
    Serializable lResult = (Serializable) lService.createOrganizationUnitType(organizationUnitType);
    // 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 "getOrganizationUnitType".
 */
final class GetOrganizationUnitType_ServiceObjectID_UserManagementAdminService_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 = UserManagementAdminService.class.getMethod("getOrganizationUnitType", ServiceObjectID.class);
    }
    catch (NoSuchMethodException e) {
      throw new JEAFSystemException(MessageConstants.SERVICE_METHOD_DOES_NOT_EXIST, e,
          UserManagementAdminService.class.getName(), "getOrganizationUnitType(ServiceObjectID.class)");
    }
  }

  /**
   * Attribute transports the method parameter "pOrganizationUnitTypeId" to the service implementation via the service
   * channel.
   */
  private final ServiceObjectID organizationUnitTypeId;

  /**
   * Initialize object. All parameters from method "getOrganizationUnitType" have to be passed as parameters to this
   * command object.
   * 
   * @param pOrganizationUnitTypeId ServiceObjectID
   */
  GetOrganizationUnitType_ServiceObjectID_UserManagementAdminService_Command(
      ServiceObjectID pOrganizationUnitTypeId ) {
    super(UserManagementAdminService.class);
    organizationUnitTypeId = pOrganizationUnitTypeId;
    parameters = new Object[] { organizationUnitTypeId };
  }

  /**
   * 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.
    UserManagementAdminService lService = (UserManagementAdminService) pTargetService;
    // Trace service call.
    Trace lTrace = XFun.getTrace();
    lTrace.write(MessageConstants.EXECUTING_SERVICE_CALL, this.getCalledServiceMethod());
    long lStartTime = System.nanoTime();
    Serializable lResult = (Serializable) lService.getOrganizationUnitType(organizationUnitTypeId);
    // 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 "deleteOrganizationUnitType".
 */
final class DeleteOrganizationUnitType_OrganizationUnitType_UserManagementAdminService_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 =
          UserManagementAdminService.class.getMethod("deleteOrganizationUnitType", OrganizationUnitType.class);
    }
    catch (NoSuchMethodException e) {
      throw new JEAFSystemException(MessageConstants.SERVICE_METHOD_DOES_NOT_EXIST, e,
          UserManagementAdminService.class.getName(), "deleteOrganizationUnitType(OrganizationUnitType.class)");
    }
  }

  /**
   * Attribute transports the method parameter "pOrganizationUnitType" to the service implementation via the service
   * channel.
   */
  private final OrganizationUnitType organizationUnitType;

  /**
   * Initialize object. All parameters from method "deleteOrganizationUnitType" have to be passed as parameters to this
   * command object.
   * 
   * @param pOrganizationUnitType OrganizationUnitType
   */
  DeleteOrganizationUnitType_OrganizationUnitType_UserManagementAdminService_Command(
      OrganizationUnitType pOrganizationUnitType ) {
    super(UserManagementAdminService.class);
    organizationUnitType = pOrganizationUnitType;
    parameters = new Object[] { organizationUnitType };
  }

  /**
   * 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.
    UserManagementAdminService lService = (UserManagementAdminService) pTargetService;
    // Trace service call.
    Trace lTrace = XFun.getTrace();
    lTrace.write(MessageConstants.EXECUTING_SERVICE_CALL, this.getCalledServiceMethod());
    long lStartTime = System.nanoTime();
    lService.deleteOrganizationUnitType(organizationUnitType);
    // 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 "createIdentityProvider".
 */
final class CreateIdentityProvider_IdentityProvider_String_UserManagementAdminService_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 =
          UserManagementAdminService.class.getMethod("createIdentityProvider", IdentityProvider.class, String.class);
    }
    catch (NoSuchMethodException e) {
      throw new JEAFSystemException(MessageConstants.SERVICE_METHOD_DOES_NOT_EXIST, e,
          UserManagementAdminService.class.getName(), "createIdentityProvider(IdentityProvider.class, String.class)");
    }
  }

  /**
   * Attribute transports the method parameter "pIdentityProvider" to the service implementation via the service
   * channel.
   */
  private final IdentityProvider identityProvider;

  /**
   * Attribute transports the method parameter "pPassword" to the service implementation via the service channel.
   */
  private final String password;

  /**
   * Initialize object. All parameters from method "createIdentityProvider" have to be passed as parameters to this
   * command object.
   * 
   * @param pIdentityProvider IdentityProvider
   * @param pPassword String
   */
  CreateIdentityProvider_IdentityProvider_String_UserManagementAdminService_Command( IdentityProvider pIdentityProvider,
      String pPassword ) {
    super(UserManagementAdminService.class);
    identityProvider = pIdentityProvider;
    password = pPassword;
    parameters = new Object[] { identityProvider, password };
  }

  /**
   * 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.
    UserManagementAdminService lService = (UserManagementAdminService) pTargetService;
    // Trace service call.
    Trace lTrace = XFun.getTrace();
    lTrace.write(MessageConstants.EXECUTING_SERVICE_CALL, this.getCalledServiceMethod());
    long lStartTime = System.nanoTime();
    Serializable lResult = (Serializable) lService.createIdentityProvider(identityProvider, password);
    // 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 - 2024 Weber Informatics LLC | Privacy Policy