Package br.net.woodstock.rockframework.xml.dom

Examples of br.net.woodstock.rockframework.xml.dom.XmlElement


    }

    Tag tag = clazz.getAnnotation(Tag.class);

    XmlDocument document = new XmlDocument("tag");
    XmlElement root = document.getRoot();

    if (ConditionUtils.isNotEmpty(tag.description())) {
      root.addElement("description").setData(tag.description());
    }

    root.addElement("name").setData(tag.name());
    root.addElement("tag-class").setData(clazz.getCanonicalName());
    root.addElement("body-content").setData(tag.content());

    if (tag.dynamicAttributes()) {
      root.addElement("dynamic-attributes").setData(Boolean.valueOf(tag.dynamicAttributes()));
    }

    BeanDescriptor beanDescriptor = new BeanDescriptorBuilder(clazz).getBeanDescriptor();

    for (PropertyDescriptor propertyDescriptor : beanDescriptor.getProperties()) {
      if (!propertyDescriptor.isAnnotationPresent(Attribute.class)) {
        continue;
      }

      Attribute tldAttribute = propertyDescriptor.getAnnotation(Attribute.class);
      XmlElement e = root.addElement("attribute");

      if (ConditionUtils.isNotEmpty(tldAttribute.description())) {
        e.addElement("description").setData(tldAttribute.description());
      }

      e.addElement("name").setData(propertyDescriptor.getName());
      e.addElement("required").setData(Boolean.valueOf(tldAttribute.required()));
      e.addElement("rtexprvalue").setData(Boolean.valueOf(tldAttribute.rtexprvalue()));
      if ((!tldAttribute.rtexprvalue()) && (tldAttribute.type() != String.class)) {
        e.addElement("type").setData(tldAttribute.type().getCanonicalName());
      }
    }

    return document.toString();
  }
View Full Code Here


public abstract class AbstractULMenuTransformer implements MenuTransformer {

  @Override
  public String toText(final List<MenuItemBean> list) {
    XmlDocument document = new XmlDocument("ul");
    XmlElement root = document.getRoot();
    for (MenuItemBean bean : list) {
      XmlElement e = root.addElement("li");
      this.setElementData(e, bean);
      if ((bean.getChilds() != null) && (bean.getChilds().size() > 0)) {
        this.setChilds(e, bean.getChilds());
      }
    }
View Full Code Here

    String str = document.toString();
    return str.substring(str.indexOf('\n') + 1);
  }

  private void setChilds(final XmlElement parent, final List<MenuItemBean> list) {
    XmlElement ul = parent.addElement("ul");
    for (MenuItemBean bean : list) {
      XmlElement e = ul.addElement("li");
      this.setElementData(e, bean);
      if ((bean.getChilds() != null) && (bean.getChilds().size() > 0)) {
        this.setChilds(e, bean.getChilds());
      }
    }
View Full Code Here

  public XmlDocument toXML(final String baseName) {
    Assert.notEmpty(baseName, "baseName");
    ClassFinder classFinder = new ClassFinderImpl(baseName, new AnnotationClassFilter(Entity.class));
    XmlDocument document = new XmlDocument(AnnotationToXML.XML_NAMESPACE, AnnotationToXML.XML_LOCATION, AnnotationToXML.XML_ROOT);
    XmlElement entityMappings = document.getRoot();

    for (Class<?> clazz : classFinder.getClasses()) {
      XmlElement entity = entityMappings.addElement("entity");
      entity.setAttribute("class", clazz.getCanonicalName());
      entity.setAttribute("access", "PROPERTY");
      entity.setAttribute("metadata-complete", "true");

      BeanDescriptor beanDescriptor = new BeanDescriptorBuilder(clazz).getBeanDescriptor();
      Entity e = beanDescriptor.getAnnotation(Entity.class);
      if (ConditionUtils.isNotEmpty(e.name())) {
        entity.setAttribute("name", e.name());
      }

      Table t = beanDescriptor.getAnnotation(Table.class);
      if (t != null) {
        XmlElement table = entity.addElement("table");
        table.setAttribute("name", t.name());
        if (ConditionUtils.isNotEmpty(t.schema())) {
          table.setAttribute("schema", t.schema());
        }
      }

      XmlElement attributes = entity.addElement("attributes");

      for (PropertyDescriptor propertyDescriptor : beanDescriptor.getProperties()) {
        if (propertyDescriptor.isAnnotationPresent(ManyToMany.class)) {
          ManyToMany mm = propertyDescriptor.getAnnotation(ManyToMany.class);
          this.addManyToMany(attributes, propertyDescriptor, mm);
        } else if (propertyDescriptor.isAnnotationPresent(ManyToOne.class)) {
          ManyToOne mo = propertyDescriptor.getAnnotation(ManyToOne.class);
          this.addManyToOne(attributes, propertyDescriptor, mo);
        } else if (propertyDescriptor.isAnnotationPresent(OneToMany.class)) {
          OneToMany om = propertyDescriptor.getAnnotation(OneToMany.class);
          this.addOneToMany(attributes, propertyDescriptor, om);
        } else if (propertyDescriptor.isAnnotationPresent(OneToOne.class)) {
          OneToOne oo = propertyDescriptor.getAnnotation(OneToOne.class);
          this.addOneToOne(attributes, propertyDescriptor, oo);
        } else if (propertyDescriptor.isAnnotationPresent(Basic.class)) {
          Basic b = propertyDescriptor.getAnnotation(Basic.class);
          this.addBasic(attributes, propertyDescriptor, b);
        } else if (propertyDescriptor.isAnnotationPresent(Id.class)) {
          this.addId(attributes, propertyDescriptor);
        } else if (propertyDescriptor.isAnnotationPresent(Column.class)) {
          Column c = propertyDescriptor.getAnnotation(Column.class);
          this.addBasic(attributes, propertyDescriptor, c);
        } else if (propertyDescriptor.isAnnotationPresent(Transient.class)) {
          this.addTransient(attributes, propertyDescriptor);
        } else {
          attributes.addComment("Field " + propertyDescriptor.getName() + " not correctly mapped");
        }
      }
    }

    return document;
View Full Code Here

    return document;
  }

  private XmlElement addManyToMany(final XmlElement parent, final PropertyDescriptor propertyDescriptor, final ManyToMany manyToMany) {
    XmlElement element = parent.addElement("many-to-many");
    element.setAttribute("name", propertyDescriptor.getName());
    element.setAttribute("fetch", manyToMany.fetch().name());
    element.setAttribute("mappedBy", manyToMany.mappedBy());

    this.addCascades(element, manyToMany.cascade());

    if (propertyDescriptor.isAnnotationPresent(JoinTable.class)) {
      JoinTable jt = propertyDescriptor.getAnnotation(JoinTable.class);
View Full Code Here

    }
    return element;
  }

  private XmlElement addManyToOne(final XmlElement parent, final PropertyDescriptor propertyDescriptor, final ManyToOne manyToOne) {
    XmlElement element = parent.addElement("many-to-one");
    element.setAttribute("name", propertyDescriptor.getName());
    element.setAttribute("optional", Boolean.toString(manyToOne.optional()));
    element.setAttribute("fetch", manyToOne.fetch().name());

    this.addCascades(element, manyToOne.cascade());

    if (propertyDescriptor.isAnnotationPresent(JoinColumn.class)) {
      JoinColumn jc = propertyDescriptor.getAnnotation(JoinColumn.class);
View Full Code Here

    }
    return element;
  }

  private XmlElement addOneToMany(final XmlElement parent, final PropertyDescriptor propertyDescriptor, final OneToMany oneToMany) {
    XmlElement element = parent.addElement("one-to-many");
    element.setAttribute("name", propertyDescriptor.getName());
    element.setAttribute("mappedBy", oneToMany.mappedBy());
    element.setAttribute("fetch", oneToMany.fetch().name());

    this.addCascades(element, oneToMany.cascade());
    return element;
  }
View Full Code Here

    this.addCascades(element, oneToMany.cascade());
    return element;
  }

  private XmlElement addOneToOne(final XmlElement parent, final PropertyDescriptor propertyDescriptor, final OneToOne oneToOne) {
    XmlElement element = parent.addElement("one-to-one");
    element.setAttribute("name", propertyDescriptor.getName());
    element.setAttribute("mappedBy", oneToOne.mappedBy());
    element.setAttribute("fetch", oneToOne.fetch().name());

    this.addCascades(element, oneToOne.cascade());

    if (propertyDescriptor.isAnnotationPresent(JoinColumn.class)) {
      JoinColumn jc = propertyDescriptor.getAnnotation(JoinColumn.class);
View Full Code Here

    }
    return element;
  }

  private XmlElement addBasic(final XmlElement parent, final PropertyDescriptor propertyDescriptor, final Basic basic) {
    XmlElement element = parent.addElement("basic");
    element.setAttribute("name", propertyDescriptor.getName());
    element.setAttribute("optional", Boolean.toString(basic.optional()));
    element.setAttribute("fetch", basic.fetch().name());

    if (propertyDescriptor.isAnnotationPresent(Column.class)) {
      Column c = propertyDescriptor.getAnnotation(Column.class);
      this.addColumn(element, propertyDescriptor, c);
    }
View Full Code Here

    }
    return element;
  }

  private XmlElement addBasic(final XmlElement parent, final PropertyDescriptor propertyDescriptor, final Column column) {
    XmlElement element = parent.addElement("basic");
    element.setAttribute("name", propertyDescriptor.getName());
    element.setAttribute("optional", Boolean.toString(column.nullable()));

    this.addColumn(element, propertyDescriptor, column);
    return element;
  }
View Full Code Here

TOP

Related Classes of br.net.woodstock.rockframework.xml.dom.XmlElement

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.