Exemplo n.º 1
0
 /// <summary>
 /// This is used to apply <c>Decorator</c> objects to the
 /// provided node before it is written. Application of decorations
 /// before the node is written allows namespaces and comments to be
 /// applied to the node. Decorations such as this do not affect the
 /// overall structure of the XML that is written.
 /// </summary>
 /// <param name="node">
 /// this is the node that decorations are applied to
 /// </param>
 /// <param name="type">
 /// this is the type to acquire the decoration for
 /// </param>
 /// <param name="label">
 /// this contains the primary decorator to be used
 /// </param>
 public void WriteNamespaces(OutputNode node, Class type, Label label) {
    Decorator primary = context.GetDecorator(type);
    Decorator decorator = label.GetDecorator();
    decorator.decorate(node, primary);
 }
Exemplo n.º 2
0
 /// <summary>
 /// This write method is used to set the value of the provided object
 /// as an attribute to the XML element. This will acquire the string
 /// value of the object using <c>toString</c> only if the
 /// object provided is not an enumerated type. If the object is an
 /// enumerated type then the <c>Enum.name</c> method is used.
 /// </summary>
 /// <param name="value">
 /// this is the value to be set as an attribute
 /// </param>
 /// <param name="node">
 /// this is the XML element to write the attribute to
 /// </param>
 /// <param name="label">
 /// the label that contains the contact details
 /// </param>
 public void WriteAttribute(OutputNode node, Object value, Label label) {
    if(value != null) {
       Decorator decorator = label.GetDecorator();
       String name = label.GetName(context);
       String text = factory.getText(value);
       OutputNode done = node.setAttribute(name, text);
       decorator.decorate(done);
    }
 }