Package org.apache.juddi.error

Examples of org.apache.juddi.error.ValueNotAllowedException


      throw new FatalErrorException(new ErrorMessage("errors.NullInput"));
   
    // No null or empty list
    List<org.uddi.api_v3.TModel> entityList = body.getTModel();
    if (entityList == null || entityList.size() == 0)
      throw new ValueNotAllowedException(new ErrorMessage("errors.savetmodel.NoInput"));
   
    for (org.uddi.api_v3.TModel entity : entityList) {
      validateTModel(em, entity);
    }
  }
View Full Code Here


      throw new FatalErrorException(new ErrorMessage("errors.NullInput"));
   
    // No null or empty list
    List<org.uddi.api_v3.PublisherAssertion> entityList = body.getPublisherAssertion();
    if (entityList == null || entityList.size() == 0)
      throw new ValueNotAllowedException(new ErrorMessage("errors.addpublisherassertions.NoInput"));
   
    for (org.uddi.api_v3.PublisherAssertion entity : entityList) {
      validatePublisherAssertion(em, entity);
    }
  }
View Full Code Here

 
  public void validateBusinessEntity(EntityManager em, org.uddi.api_v3.BusinessEntity businessEntity) throws DispositionReportFaultMessage {
   
    // A supplied businessEntity can't be null
    if (businessEntity == null)
      throw new ValueNotAllowedException(new ErrorMessage("errors.businessentity.NullInput"));
   
    boolean entityExists = false;
    String entityKey = businessEntity.getBusinessKey();
    if (entityKey == null || entityKey.length() == 0) {
      KeyGenerator keyGen = KeyGeneratorFactory.getKeyGenerator();
View Full Code Here

    if (businessServices == null)
      return;
   
    List<org.uddi.api_v3.BusinessService> businessServiceList = businessServices.getBusinessService();
    if (businessServiceList == null || businessServiceList.size() == 0)
      throw new ValueNotAllowedException(new ErrorMessage("errors.businessservices.NoInput"));
   
    for (org.uddi.api_v3.BusinessService businessService : businessServiceList) {
      validateBusinessService(em, businessService, parent);
    }
     
View Full Code Here

  public void validateBusinessService(EntityManager em, org.uddi.api_v3.BusinessService businessService, org.uddi.api_v3.BusinessEntity parent)
          throws DispositionReportFaultMessage {

    // A supplied businessService can't be null
    if (businessService == null)
      throw new ValueNotAllowedException(new ErrorMessage("errors.businessservice.NullInput"));
   
    // Retrieve the service's passed key
    String entityKey = businessService.getServiceKey();
    if (entityKey != null && entityKey.length() > 0) {
      // Per section 4.4: keys must be case-folded
View Full Code Here

    if (bindingTemplates == null)
      return;
 
    List<org.uddi.api_v3.BindingTemplate> bindingTemplateList = bindingTemplates.getBindingTemplate();
    if (bindingTemplateList == null || bindingTemplateList.size() == 0)
      throw new ValueNotAllowedException(new ErrorMessage("errors.bindingtemplates.NoInput"));
 
    for (org.uddi.api_v3.BindingTemplate bindingTemplate : bindingTemplateList) {
      validateBindingTemplate(em, bindingTemplate, parent);
    }
 
View Full Code Here

  public void validateBindingTemplate(EntityManager em, org.uddi.api_v3.BindingTemplate bindingTemplate, org.uddi.api_v3.BusinessService parent)
          throws DispositionReportFaultMessage {

    // A supplied bindingTemplate can't be null
    if (bindingTemplate == null)
      throw new ValueNotAllowedException(new ErrorMessage("errors.bindingtemplate.NullInput"));

    // Retrieve the binding's passed key
    String entityKey = bindingTemplate.getBindingKey();
    if (entityKey != null && entityKey.length() > 0) {
      // Per section 4.4: keys must be case-folded
      entityKey = entityKey.toLowerCase();
      bindingTemplate.setBindingKey(entityKey);
    }

    // The parent key is either supplied or provided by the higher call to the parent entity save.  If it is provided in both instances, if they differ, an
    // error occurs.
    String parentKey = bindingTemplate.getServiceKey();
    if (parentKey != null && parentKey.length() > 0) {
      // Per section 4.4: keys must be case-folded
      parentKey = parentKey.toLowerCase();
      bindingTemplate.setServiceKey(parentKey);
    }
   
    if (parent != null) {
      if (parentKey != null && parentKey.length() > 0) {
        if (!parentKey.equalsIgnoreCase(parent.getBusinessKey()))
          throw new InvalidKeyPassedException(new ErrorMessage("errors.invalidkey.bindingtemplate.ParentMismatch", parentKey + ", " + parent.getBusinessKey()));
      }
      else
        parentKey = parent.getServiceKey();
    }
   
    boolean entityExists = false;
    if (entityKey == null || entityKey.length() == 0) {
      KeyGenerator keyGen = KeyGeneratorFactory.getKeyGenerator();
      entityKey = keyGen.generate();
      bindingTemplate.setBindingKey(entityKey);
    }
    else {
     
      Object obj = em.find(org.apache.juddi.model.BindingTemplate.class, entityKey);
      if (obj != null) {
        entityExists = true;

        org.apache.juddi.model.BindingTemplate bt = (org.apache.juddi.model.BindingTemplate)obj;

        // If the object exists, and the parentKey was not found to this point, then a save on an existing binding with a blank
        // service key has occurred.  It is set here and added to the entity being saved - a necessary step for the object to be
        // persisted properly. (This condition makes some validation tests below unnecessary as the parent is "verified" but it's OK to
        // still run them).
        if (parentKey == null || parentKey.length() == 0) {
          parentKey = bt.getBusinessService().getEntityKey();
          bindingTemplate.setServiceKey(parentKey);
        }
       
        // If existing binding trying to be saved has a different parent key, then we have a problem
        // TODO: moving bindings is allowed according to spec?
        if (!parentKey.equalsIgnoreCase(bt.getBusinessService().getEntityKey()))
          throw new InvalidKeyPassedException(new ErrorMessage("errors.invalidkey.bindingtemplate.ParentMismatch", parentKey + ", " + bt.getBusinessService().getEntityKey()));
       
        // Make sure publisher owns this entity.
        if (!publisher.isOwner((UddiEntity)obj))
          throw new UserMismatchException(new ErrorMessage("errors.usermismatch.InvalidOwner", entityKey));

      }
      else {
        // Inside this block, we have a key proposed by the publisher on a new entity

        // Validate key and then check to see that the proposed key is valid for this publisher
        ValidateUDDIKey.validateUDDIv3Key(entityKey);
        if (!publisher.isValidPublisherKey(em, entityKey))
          throw new KeyUnavailableException(new ErrorMessage("errors.keyunavailable.BadPartition", entityKey));

      }
     
    }
   
    // Parent key must be passed if this is a new entity
    if (!entityExists) {
      if (parentKey == null || parentKey.length() == 0)
        throw new InvalidKeyPassedException(new ErrorMessage("errors.invalidkey.ParentServiceNotFound", parentKey));
    }

    // If parent key IS passed, whether new entity or not, it must be valid.  Additionally, the current publisher must be the owner of the parent.  Note that
    // if a parent ENTITY was passed in, then we don't need to check for any of this since this is part of a higher call.
    if (parentKey != null) {
      if (parent == null) {
        Object parentTemp = em.find(org.apache.juddi.model.BusinessService.class, parentKey);
        if (parentTemp == null)
          throw new InvalidKeyPassedException(new ErrorMessage("errors.invalidkey.ParentBusinessNotFound", parentKey));

        // Make sure publisher owns this parent entity.
        if (!publisher.isOwner((UddiEntity)parentTemp))
          throw new UserMismatchException(new ErrorMessage("errors.usermismatch.InvalidOwnerParent", parentKey));

      }
    }

    if (!entityExists) {
      // Check to make sure key isn't used by another entity.
      if (!isUniqueKey(em, entityKey))
        throw new KeyUnavailableException(new ErrorMessage("errors.keyunavailable.KeyExists", entityKey));
    }
   
    // TODO: validate "checked" categories or category groups (see section 5.2.3 of spec)? optional to support
   
   
    if (bindingTemplate.getAccessPoint() == null)
      throw new ValueNotAllowedException(new ErrorMessage("errors.bindingtemplate.NoAccessPoint"));
   
    validateCategoryBag(bindingTemplate.getCategoryBag());
    validateTModelInstanceDetails(bindingTemplate.getTModelInstanceDetails());
   
   
View Full Code Here

  }

  public void validateTModel(EntityManager em, org.uddi.api_v3.TModel tModel) throws DispositionReportFaultMessage {
    // A supplied tModel can't be null
    if (tModel == null)
      throw new ValueNotAllowedException(new ErrorMessage("errors.tmodel.NullInput"));
   
    boolean entityExists = false;
    String entityKey = tModel.getTModelKey();
    if (entityKey == null || entityKey.length() == 0) {
      KeyGenerator keyGen = KeyGeneratorFactory.getKeyGenerator();
      entityKey = keyGen.generate();
      tModel.setTModelKey(entityKey);
    }
    else {
      // Per section 4.4: keys must be case-folded
      entityKey = entityKey.toLowerCase();
      tModel.setTModelKey(entityKey);
     
      Object obj = em.find(org.apache.juddi.model.Tmodel.class, entityKey);
      if (obj != null) {
        entityExists = true;

        // Make sure publisher owns this entity.
        if (!publisher.isOwner((UddiEntity)obj))
          throw new UserMismatchException(new ErrorMessage("errors.usermismatch.InvalidOwner", entityKey));
      }
      else {
        // Inside this block, we have a key proposed by the publisher on a new entity
       
        // First test to see if this is a Key Generator tModel. The keyGenerator suffix appearing in the key is the indicator, since this is not
        // allowed *unless* it's a key generator.
        if (entityKey.toUpperCase().contains(KeyGenerator.KEYGENERATOR_SUFFIX.toUpperCase())) {
          ValidateUDDIKey.validateUDDIv3KeyGeneratorTModel(tModel);
         
          // The root publisher is only allowed one key generator.  This is published in the installation.
          if (publisher.getAuthorizedName().equals(Constants.ROOT_PUBLISHER))
            throw new FatalErrorException(new ErrorMessage("errors.tmodel.keygenerator.RootKeyGen"));
         
          // It's a valid Key Generator, but is it available for this publisher?
          if (!publisher.isKeyGeneratorAvailable(em, entityKey))
            throw new KeyUnavailableException(new ErrorMessage("errors.keyunavailable.BadPartition", entityKey));
       
        }
        else {
          // If not a key generator, then simply validate key and then check to see that the proposed key is valid for this publisher
          ValidateUDDIKey.validateUDDIv3Key(entityKey);
          if (!publisher.isValidPublisherKey(em, entityKey))
            throw new KeyUnavailableException(new ErrorMessage("errors.keyunavailable.BadPartition", entityKey));
        }
      }
    }

    if (!entityExists) {
      // Check to make sure key isn't used by another entity.
      if (!isUniqueKey(em, entityKey))
        throw new KeyUnavailableException(new ErrorMessage("errors.keyunavailable.KeyExists", entityKey));
    }
   
    // TODO: validate "checked" categories or category groups (see section 5.2.3 of spec)? optional to support
   
    if (tModel.getName() == null)
      throw new ValueNotAllowedException(new ErrorMessage("errors.tmodel.NoName"));
   
    validateCategoryBag(tModel.getCategoryBag());
    validateIdentifierBag(tModel.getIdentifierBag());

    List<org.uddi.api_v3.OverviewDoc> overviewDocList = tModel.getOverviewDoc();
View Full Code Here

  }
 
  public void validatePublisherAssertion(EntityManager em, org.uddi.api_v3.PublisherAssertion pubAssertion) throws DispositionReportFaultMessage {
    // A supplied publisher assertion can't be null
    if (pubAssertion == null)
      throw new ValueNotAllowedException(new ErrorMessage("errors.pubassertion.NullInput"));
   
    // The keyedRef must not be blank and every field must contain data.
    org.uddi.api_v3.KeyedReference keyedRef = pubAssertion.getKeyedReference();
    if (keyedRef == null ||
      keyedRef.getTModelKey() == null || keyedRef.getTModelKey().length() == 0 ||
      keyedRef.getKeyName() == null || keyedRef.getKeyName().length() == 0 ||
      keyedRef.getKeyValue() == null || keyedRef.getKeyValue().length() == 0)
      throw new ValueNotAllowedException(new ErrorMessage("errors.pubassertion.BlankKeyedRef"));
   
    String fromKey = pubAssertion.getFromKey();
    if (fromKey == null || fromKey.length() == 0)
      throw new ValueNotAllowedException(new ErrorMessage("errors.pubassertion.BlankFromKey"));

    String toKey = pubAssertion.getToKey();
    if (toKey == null || toKey.length() == 0)
      throw new ValueNotAllowedException(new ErrorMessage("errors.pubassertion.BlankToKey"));
   
    if (fromKey.equalsIgnoreCase(toKey))
      throw new ValueNotAllowedException(new ErrorMessage("errors.pubassertion.SameBusinessKey"));
   
    Object fromObj = em.find(org.apache.juddi.model.BusinessEntity.class, fromKey);
    if (fromObj == null)
      throw new InvalidKeyPassedException(new ErrorMessage("errors.invalidkey.BusinessNotFound", fromKey));
View Full Code Here

  }
 
  public void validateNames(List<org.uddi.api_v3.Name> names) throws DispositionReportFaultMessage {
    // At least one name is required
    if (names == null || names.size() == 0)
      throw new ValueNotAllowedException(new ErrorMessage("errors.names.NoInput"));
   
    for (Name n : names) {
      if (n.getValue() == null || n.getValue().length() == 0)
        throw new ValueNotAllowedException(new ErrorMessage("errors.names.NoValue"));
    }
   
  }
View Full Code Here

TOP

Related Classes of org.apache.juddi.error.ValueNotAllowedException

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.