Package org.springframework.beans

Examples of org.springframework.beans.PropertyValue


  /**
   * Add the supplied property value under the given name.
   */
  public BeanDefinitionBuilder addPropertyValue(String name, Object value) {
    this.beanDefinition.getPropertyValues().addPropertyValue(new PropertyValue(name, value));
    return this;
  }
View Full Code Here


  protected void checkFieldMarkers(MutablePropertyValues mpvs) {
    if (getFieldMarkerPrefix() != null) {
      String fieldMarkerPrefix = getFieldMarkerPrefix();
      PropertyValue[] pvArray = mpvs.getPropertyValues();
      for (int i = 0; i < pvArray.length; i++) {
        PropertyValue pv = pvArray[i];
        if (pv.getName().startsWith(fieldMarkerPrefix)) {
          String field = pv.getName().substring(fieldMarkerPrefix.length());
          if (getPropertyAccessor().isWritableProperty(field) && !mpvs.contains(field)) {
            Class fieldType = getPropertyAccessor().getPropertyType(field);
            mpvs.addPropertyValue(field, getEmptyValue(field, fieldType));
          }
          mpvs.removePropertyValue(pv);
View Full Code Here

    // Create a deep copy, resolving any references for values.
    BeanWrapperImpl bwi = (bw instanceof BeanWrapperImpl ? (BeanWrapperImpl) bw : null);
    List deepCopy = new ArrayList(original.size());
    boolean resolveNecessary = false;
    for (Iterator it = original.iterator(); it.hasNext();) {
      PropertyValue pv = (PropertyValue) it.next();
      if (pv.isConverted()) {
        deepCopy.add(pv);
      }
      else {
        String propertyName = pv.getName();
        Object originalValue = pv.getValue();
        Object resolvedValue =
            valueResolver.resolveValueIfNecessary("bean property '" + propertyName + "'", originalValue);
        // Possibly store converted value in merged bean definition,
        // in order to avoid re-conversion for every created bean instance.
        if (resolvedValue == originalValue) {
          if (bwi != null && !PropertyAccessorUtils.isNestedOrIndexedProperty(propertyName)) {
            pv.setConvertedValue(bwi.convertForProperty(resolvedValue, propertyName));
          }
          deepCopy.add(pv);
        }
        else if (originalValue instanceof TypedStringValue &&
            bwi != null && !PropertyAccessorUtils.isNestedOrIndexedProperty(propertyName)) {
          pv.setConvertedValue(bwi.convertForProperty(resolvedValue, propertyName));
          deepCopy.add(pv);
        }
        else {
          resolveNecessary = true;
          deepCopy.add(new PropertyValue(pv, resolvedValue));
        }
      }
    }
    if (mpvs != null && !resolveNecessary) {
      mpvs.setConverted();
View Full Code Here

  }

  protected void visitPropertyValues(MutablePropertyValues pvs) {
    PropertyValue[] pvArray = pvs.getPropertyValues();
    for (int i = 0; i < pvArray.length; i++) {
      PropertyValue pv = pvArray[i];
      Object newVal = resolveValue(pv.getValue());
      if (!ObjectUtils.nullSafeEquals(newVal, pv.getValue())) {
        pvs.addPropertyValue(pv.getName(), newVal);
      }
    }
  }
View Full Code Here

  private void findInnerBeanDefinitionsAndBeanReferences(BeanDefinition beanDefinition) {
    List innerBeans = new ArrayList();
    List references = new ArrayList();
    PropertyValues propertyValues = beanDefinition.getPropertyValues();
    for (int i = 0; i < propertyValues.getPropertyValues().length; i++) {
      PropertyValue propertyValue = propertyValues.getPropertyValues()[i];
      Object value = propertyValue.getValue();
      if (value instanceof BeanDefinitionHolder) {
        innerBeans.add(((BeanDefinitionHolder) value).getBeanDefinition());
      }
      else if (value instanceof BeanDefinition) {
        innerBeans.add(value);
View Full Code Here

      Enumeration en = config.getInitParameterNames();
      while (en.hasMoreElements()) {
        String property = (String) en.nextElement();
        Object value = config.getInitParameter(property);
        addPropertyValue(new PropertyValue(property, value));
        if (missingProps != null) {
          missingProps.remove(property);
        }
      }
View Full Code Here

      Enumeration en = config.getInitParameterNames();
      while (en.hasMoreElements()) {
        String property = (String) en.nextElement();
        Object value = config.getInitParameter(property);
        addPropertyValue(new PropertyValue(property, value));
        if (missingProps != null) {
          missingProps.remove(property);
        }
      }
View Full Code Here

      Enumeration en = config.getInitParameterNames();
      while (en.hasMoreElements()) {
        String property = (String) en.nextElement();
        Object value = config.getInitParameter(property);
        addPropertyValue(new PropertyValue(property, value));
        if (missingProps != null) {
          missingProps.remove(property);
        }
      }
View Full Code Here

   * @see #isAllowed(String)
   */
  protected void checkAllowedFields(MutablePropertyValues mpvs) {
    PropertyValue[] pvs = mpvs.getPropertyValues();
    for (int i = 0; i < pvs.length; i++) {
      PropertyValue pv = pvs[i];
      String field = PropertyAccessorUtils.canonicalPropertyName(pv.getName());
      if (!isAllowed(field)) {
        mpvs.removePropertyValue(pv);
        getBindingResult().recordSuppressedField(field);
        if (logger.isDebugEnabled()) {
          logger.debug("Field [" + field + "] has been removed from PropertyValues " +
View Full Code Here

    String[] requiredFields = getRequiredFields();
    if (!ObjectUtils.isEmpty(requiredFields)) {
      Map propertyValues = new HashMap();
      PropertyValue[] pvs = mpvs.getPropertyValues();
      for (int i = 0; i < pvs.length; i++) {
        PropertyValue pv = pvs[i];
        String canonicalName = PropertyAccessorUtils.canonicalPropertyName(pv.getName());
        propertyValues.put(canonicalName, pv);
      }
      for (int i = 0; i < requiredFields.length; i++) {
        String field = requiredFields[i];
        PropertyValue pv = (PropertyValue) propertyValues.get(field);
        if (pv == null || pv.getValue() == null ||
            (pv.getValue() instanceof String && !StringUtils.hasText((String) pv.getValue()))) {
          // Use bind error processor to create FieldError.
          getBindingErrorProcessor().processMissingFieldError(field, getInternalBindingResult());
          // Remove property from property values to bind:
          // It has already caused a field error with a rejected value.
          if (pv != null) {
View Full Code Here

TOP

Related Classes of org.springframework.beans.PropertyValue

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.