/* (non-Javadoc)
  * @see org.fosstrak.ale.wsdl.alelr.epcglobal.ALELRServicePortType#setReaders(org.fosstrak.ale.wsdl.alelr.epcglobal.SetReaders  parms )*
  */
 public org.fosstrak.ale.wsdl.alelr.epcglobal.SetReadersResult setReaders(SetReaders parms)
     throws ValidationExceptionResponse, InUseExceptionResponse, ImplementationExceptionResponse,
         NonCompositeReaderExceptionResponse, SecurityExceptionResponse,
         NoSuchNameExceptionResponse, ImmutableReaderExceptionResponse,
         ReaderLoopExceptionResponse {
   LOG.debug("setReaders");
   try {
     logicalReaderManager.setReaders(parms.getName(), parms.getReaders().getReader());
   } catch (org.fosstrak.ale.exception.NoSuchNameException e) {
     throw new NoSuchNameExceptionResponse(e.getMessage(), e);
   } catch (org.fosstrak.ale.exception.SecurityException e) {
     throw new SecurityExceptionResponse(e.getMessage(), e);
   } catch (org.fosstrak.ale.exception.ImplementationException e) {
     throw new ImplementationExceptionResponse(e.getMessage(), e);
   } catch (org.fosstrak.ale.exception.InUseException e) {
     throw new InUseExceptionResponse(e.getMessage(), e);
   } catch (org.fosstrak.ale.exception.ImmutableReaderException e) {
     throw new ImmutableReaderExceptionResponse(e.getMessage(), e);
   } catch (org.fosstrak.ale.exception.NonCompositeReaderException e) {
     throw new NonCompositeReaderExceptionResponse(e.getMessage(), e);
   } catch (org.fosstrak.ale.exception.ValidationException e) {
     throw new ValidationExceptionResponse(e.getMessage(), e);
   } catch (org.fosstrak.ale.exception.ReaderLoopException e) {
     throw new ReaderLoopExceptionResponse(e.getMessage(), e);
   }
   return null;
 }
 /* (non-Javadoc)
  * @see org.fosstrak.ale.wsdl.ale.epcglobal.ALEServicePortType#getECSpec(org.fosstrak.ale.wsdl.ale.epcglobal.GetECSpec  parms )*
  */
 public org.fosstrak.ale.xsd.ale.epcglobal.ECSpec getECSpec(GetECSpec parms)
     throws ImplementationExceptionResponse, SecurityExceptionResponse,
         NoSuchNameExceptionResponse {
   log.debug("getECSpec");
   try {
     return ale.getECSpec(parms.getSpecName());
   } catch (org.fosstrak.ale.exception.NoSuchNameException e) {
     throw new NoSuchNameExceptionResponse(e.getMessage(), e);
   }
 }
 /* (non-Javadoc)
  * @see org.fosstrak.ale.wsdl.ale.epcglobal.ALEServicePortType#undefine(org.fosstrak.ale.wsdl.ale.epcglobal.Undefine  parms )*
  */
 public org.fosstrak.ale.wsdl.ale.epcglobal.VoidHolder undefine(Undefine parms)
     throws ImplementationExceptionResponse, SecurityExceptionResponse,
         NoSuchNameExceptionResponse {
   log.debug("undefine");
   try {
     ale.undefine(parms.getSpecName());
   } catch (org.fosstrak.ale.exception.NoSuchNameException e) {
     throw new NoSuchNameExceptionResponse(e.getMessage(), e);
   }
   return new VoidHolder();
 }
 /* (non-Javadoc)
  * @see org.fosstrak.ale.wsdl.alelr.epcglobal.ALELRServicePortType#getLRSpec(org.fosstrak.ale.wsdl.alelr.epcglobal.GetLRSpec  parms )*
  */
 public org.fosstrak.ale.xsd.ale.epcglobal.LRSpec getLRSpec(GetLRSpec parms)
     throws ImplementationExceptionResponse, SecurityExceptionResponse,
         NoSuchNameExceptionResponse {
   LOG.debug("getLRSpec");
   try {
     return logicalReaderManager.getLRSpec(parms.getName());
   } catch (org.fosstrak.ale.exception.NoSuchNameException e) {
     throw new NoSuchNameExceptionResponse(e.getMessage(), e);
   } catch (org.fosstrak.ale.exception.SecurityException e) {
     throw new SecurityExceptionResponse(e.getMessage(), e);
   } catch (org.fosstrak.ale.exception.ImplementationException e) {
     throw new ImplementationExceptionResponse(e.getMessage(), e);
   }
 }
 /* (non-Javadoc)
  * @see org.fosstrak.ale.wsdl.alelr.epcglobal.ALELRServicePortType#getPropertyValue(org.fosstrak.ale.wsdl.alelr.epcglobal.GetPropertyValue  parms )*
  */
 public java.lang.String getPropertyValue(GetPropertyValue parms)
     throws ImplementationExceptionResponse, SecurityExceptionResponse,
         NoSuchNameExceptionResponse {
   LOG.debug("getPropertyValue");
   try {
     return logicalReaderManager.getPropertyValue(parms.getName(), parms.getPropertyName());
   } catch (org.fosstrak.ale.exception.NoSuchNameException e) {
     throw new NoSuchNameExceptionResponse(e.getMessage(), e);
   } catch (org.fosstrak.ale.exception.SecurityException e) {
     throw new SecurityExceptionResponse(e.getMessage(), e);
   } catch (org.fosstrak.ale.exception.ImplementationException e) {
     throw new ImplementationExceptionResponse(e.getMessage(), e);
   }
 }
  /* (non-Javadoc)
   * @see org.fosstrak.ale.wsdl.ale.epcglobal.ALEServicePortType#getSubscribers(org.fosstrak.ale.wsdl.ale.epcglobal.GetSubscribers  parms )*
   */
  public org.fosstrak.ale.wsdl.ale.epcglobal.ArrayOfString getSubscribers(GetSubscribers parms)
      throws ImplementationExceptionResponse, SecurityExceptionResponse,
          NoSuchNameExceptionResponse {
    log.debug("getSubscribers");
    ArrayOfString aof = new ArrayOfString();

    try {
      for (String sub : ale.getSubscribers(parms.getSpecName())) {
        aof.getString().add(sub);
      }
    } catch (org.fosstrak.ale.exception.NoSuchNameException e) {
      throw new NoSuchNameExceptionResponse(e.getMessage(), e);
    }
    return aof;
  }
 /* (non-Javadoc)
  * @see org.fosstrak.ale.wsdl.ale.epcglobal.ALEServicePortType#subscribe(org.fosstrak.ale.wsdl.ale.epcglobal.Subscribe  parms )*
  */
 public org.fosstrak.ale.wsdl.ale.epcglobal.VoidHolder subscribe(Subscribe parms)
     throws ImplementationExceptionResponse, SecurityExceptionResponse,
         NoSuchNameExceptionResponse, InvalidURIExceptionResponse,
         DuplicateSubscriptionExceptionResponse {
   log.debug("subscribe");
   try {
     ale.subscribe(parms.getSpecName(), parms.getNotificationURI());
   } catch (org.fosstrak.ale.exception.NoSuchNameException e) {
     throw new NoSuchNameExceptionResponse(e.getMessage(), e);
   } catch (org.fosstrak.ale.exception.InvalidURIException e) {
     throw new InvalidURIExceptionResponse(e.getMessage(), e);
   } catch (org.fosstrak.ale.exception.DuplicateSubscriptionException e) {
     throw new DuplicateSubscriptionExceptionResponse(e.getMessage(), e);
   }
   return new VoidHolder();
 }
 /* (non-Javadoc)
  * @see org.fosstrak.ale.wsdl.alelr.epcglobal.ALELRServicePortType#undefine(org.fosstrak.ale.wsdl.alelr.epcglobal.Undefine  parms )*
  */
 public org.fosstrak.ale.wsdl.alelr.epcglobal.UndefineResult undefine(Undefine parms)
     throws InUseExceptionResponse, ImplementationExceptionResponse, SecurityExceptionResponse,
         NoSuchNameExceptionResponse, ImmutableReaderExceptionResponse {
   LOG.debug("undefine");
   try {
     logicalReaderManager.undefine(parms.getName());
   } catch (org.fosstrak.ale.exception.NoSuchNameException e) {
     throw new NoSuchNameExceptionResponse(e.getMessage(), e);
   } catch (org.fosstrak.ale.exception.SecurityException e) {
     throw new SecurityExceptionResponse(e.getMessage(), e);
   } catch (org.fosstrak.ale.exception.ImplementationException e) {
     throw new ImplementationExceptionResponse(e.getMessage(), e);
   } catch (org.fosstrak.ale.exception.InUseException e) {
     throw new InUseExceptionResponse(e.getMessage(), e);
   } catch (org.fosstrak.ale.exception.ImmutableReaderException e) {
     throw new ImmutableReaderExceptionResponse(e.getMessage(), e);
   }
   return null;
 }