Class ObjectCreateRule

  • Direct Known Subclasses:
    ListenerCreateRule

    public class ObjectCreateRule
    extends Rule
    Rule implementation that creates a new object and pushes it onto the object stack. When the element is complete, the object will be popped
    • Field Detail

      • attributeName

        protected String attributeName
        The attribute containing an override class name if it is present.
      • className

        protected String className
        The Java class name of the object to be created.
    • Constructor Detail

      • ObjectCreateRule

        public ObjectCreateRule​(String className)
        Construct an object create rule with the specified class name.
        Parameters:
        className - Java class name of the object to be created
      • ObjectCreateRule

        public ObjectCreateRule​(String className,
                                String attributeName)
        Construct an object create rule with the specified class name and an optional attribute name containing an override.
        Parameters:
        className - Java class name of the object to be created
        attributeName - Attribute name which, if present, contains an override of the class name to create
    • Method Detail

      • begin

        public void begin​(String namespace,
                          String name,
                          Attributes attributes)
                   throws Exception
        Process the beginning of this element.
        Overrides:
        begin in class Rule
        Parameters:
        namespace - the namespace URI of the matching element, or an empty string if the parser is not namespace aware or the element has no namespace
        name - the local name if the parser is namespace aware, or just the element name otherwise
        attributes - The attribute list for this element
        Throws:
        Exception - if an error occurs while processing the event
      • getRealClassName

        protected String getRealClassName​(Attributes attributes)
        Return the actual class name of the class to be instantiated.
        Parameters:
        attributes - The attribute list for this element
        Returns:
        the class name
      • end

        public void end​(String namespace,
                        String name)
                 throws Exception
        Process the end of this element.
        Overrides:
        end in class Rule
        Parameters:
        namespace - the namespace URI of the matching element, or an empty string if the parser is not namespace aware or the element has no namespace
        name - the local name if the parser is namespace aware, or just the element name otherwise
        Throws:
        Exception - if an error occurs while processing the event
      • toString

        public String toString()
        Render a printable version of this Rule.
        Overrides:
        toString in class Object