public void decorate()

in core/src/main/java/com/alibaba/smart/framework/engine/smart/Properties.java [31:58]


    public void decorate(ExtensionElements extensionElements, ParseContext context) {
        Map map =  (Map)extensionElements.getDecorationMap().get(getDecoratorType());

        if(null == map){
            map = MapUtil.newHashMap();
            extensionElements.getDecorationMap().put(this.getDecoratorType(),map);
        }



        for (PropertiesElementMarker extensionDecorator : extensionList) {

            if(extensionDecorator instanceof  Value){
                Value value = (Value)extensionDecorator;
                map.put(value.getName(),value.getValue());
            }else if (extensionDecorator instanceof  Property){
                Property property = (Property)extensionDecorator;

                PropertyCompositeKey key = new PropertyCompositeKey(property.getType(), property.getName());
                PropertyCompositeValue value = new PropertyCompositeValue(property.getValue(), property.getAttrs());

                map.put(key, value);
            }

        }


    }