5b64d5d44892834ba97f003080f3467299b7c5c5jeff.schenk//
5b64d5d44892834ba97f003080f3467299b7c5c5jeff.schenk// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v1.0.6-b27-fcs
5b64d5d44892834ba97f003080f3467299b7c5c5jeff.schenk// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
5b64d5d44892834ba97f003080f3467299b7c5c5jeff.schenk// Any modifications to this file will be lost upon recompilation of the source schema.
5b64d5d44892834ba97f003080f3467299b7c5c5jeff.schenk// Generated on: 2012.06.11 at 10:34:07 AM PDT
5b64d5d44892834ba97f003080f3467299b7c5c5jeff.schenk//
5b64d5d44892834ba97f003080f3467299b7c5c5jeff.schenk
5b64d5d44892834ba97f003080f3467299b7c5c5jeff.schenkpackage com.sun.identity.saml2.jaxb.assertion.impl.runtime;
5b64d5d44892834ba97f003080f3467299b7c5c5jeff.schenk
5b64d5d44892834ba97f003080f3467299b7c5c5jeff.schenkimport javax.xml.bind.JAXBException;
5b64d5d44892834ba97f003080f3467299b7c5c5jeff.schenk
5b64d5d44892834ba97f003080f3467299b7c5c5jeff.schenk/**
5b64d5d44892834ba97f003080f3467299b7c5c5jeff.schenk * Keeps the information about the grammar as a whole.
5b64d5d44892834ba97f003080f3467299b7c5c5jeff.schenk *
5b64d5d44892834ba97f003080f3467299b7c5c5jeff.schenk * Implementation of this interface is provided by the generated code.
5b64d5d44892834ba97f003080f3467299b7c5c5jeff.schenk *
5b64d5d44892834ba97f003080f3467299b7c5c5jeff.schenk * @author
5b64d5d44892834ba97f003080f3467299b7c5c5jeff.schenk * <a href="mailto:kohsuke.kawaguchi@sun.com">Kohsuke KAWAGUCHI</a>
5b64d5d44892834ba97f003080f3467299b7c5c5jeff.schenk */
5b64d5d44892834ba97f003080f3467299b7c5c5jeff.schenkpublic interface GrammarInfo
5b64d5d44892834ba97f003080f3467299b7c5c5jeff.schenk{
5b64d5d44892834ba97f003080f3467299b7c5c5jeff.schenk /**
5b64d5d44892834ba97f003080f3467299b7c5c5jeff.schenk * Creates an unmarshaller that can unmarshal a given element.
5b64d5d44892834ba97f003080f3467299b7c5c5jeff.schenk *
5b64d5d44892834ba97f003080f3467299b7c5c5jeff.schenk * @param namespaceUri
5b64d5d44892834ba97f003080f3467299b7c5c5jeff.schenk * The string needs to be interned by the caller
5b64d5d44892834ba97f003080f3467299b7c5c5jeff.schenk * for a performance reason.
5b64d5d44892834ba97f003080f3467299b7c5c5jeff.schenk * @param localName
5b64d5d44892834ba97f003080f3467299b7c5c5jeff.schenk * The string needs to be interned by the caller
5b64d5d44892834ba97f003080f3467299b7c5c5jeff.schenk * for a performance reason.
5b64d5d44892834ba97f003080f3467299b7c5c5jeff.schenk *
5b64d5d44892834ba97f003080f3467299b7c5c5jeff.schenk * @return
5b64d5d44892834ba97f003080f3467299b7c5c5jeff.schenk * null if the given name pair is not recognized.
5b64d5d44892834ba97f003080f3467299b7c5c5jeff.schenk */
5b64d5d44892834ba97f003080f3467299b7c5c5jeff.schenk UnmarshallingEventHandler createUnmarshaller(
dff2cc5646d4437ab9e0cb1dcb59da65462a5938jeff.schenk String namespaceUri, String localName, UnmarshallingContext context );
5b64d5d44892834ba97f003080f3467299b7c5c5jeff.schenk
5b64d5d44892834ba97f003080f3467299b7c5c5jeff.schenk /**
5b64d5d44892834ba97f003080f3467299b7c5c5jeff.schenk * Creates an instance for the root element.
5b64d5d44892834ba97f003080f3467299b7c5c5jeff.schenk *
5b64d5d44892834ba97f003080f3467299b7c5c5jeff.schenk * @return
5b64d5d44892834ba97f003080f3467299b7c5c5jeff.schenk * null if the given name pair is not recognized.
5b64d5d44892834ba97f003080f3467299b7c5c5jeff.schenk */
5b64d5d44892834ba97f003080f3467299b7c5c5jeff.schenk Class getRootElement(String namespaceUri, String localName);
5b64d5d44892834ba97f003080f3467299b7c5c5jeff.schenk
5b64d5d44892834ba97f003080f3467299b7c5c5jeff.schenk /**
5b64d5d44892834ba97f003080f3467299b7c5c5jeff.schenk * Return the probe points for this GrammarInfo, which are used to detect
5b64d5d44892834ba97f003080f3467299b7c5c5jeff.schenk * {namespaceURI,localName} collisions across the GrammarInfo's on the
5b64d5d44892834ba97f003080f3467299b7c5c5jeff.schenk * schemaPath. This is a slightly more complex implementation than a simple
5b64d5d44892834ba97f003080f3467299b7c5c5jeff.schenk * hashmap, but it is more flexible in supporting additional schema langs.
5b64d5d44892834ba97f003080f3467299b7c5c5jeff.schenk */
5b64d5d44892834ba97f003080f3467299b7c5c5jeff.schenk String[] getProbePoints();
5b64d5d44892834ba97f003080f3467299b7c5c5jeff.schenk
5b64d5d44892834ba97f003080f3467299b7c5c5jeff.schenk /**
5b64d5d44892834ba97f003080f3467299b7c5c5jeff.schenk * Returns true if the invocation of the createUnmarshaller method
5b64d5d44892834ba97f003080f3467299b7c5c5jeff.schenk * will return a non-null value for the given name pair.
5b64d5d44892834ba97f003080f3467299b7c5c5jeff.schenk *
5b64d5d44892834ba97f003080f3467299b7c5c5jeff.schenk * @param nsUri
5b64d5d44892834ba97f003080f3467299b7c5c5jeff.schenk * The string needs to be interned by the caller
5b64d5d44892834ba97f003080f3467299b7c5c5jeff.schenk * for a performance reason.
5b64d5d44892834ba97f003080f3467299b7c5c5jeff.schenk * @param localName
5b64d5d44892834ba97f003080f3467299b7c5c5jeff.schenk * The string needs to be interned by the caller
5b64d5d44892834ba97f003080f3467299b7c5c5jeff.schenk * for a performance reason.
5b64d5d44892834ba97f003080f3467299b7c5c5jeff.schenk */
dff2cc5646d4437ab9e0cb1dcb59da65462a5938jeff.schenk boolean recognize( String nsUri, String localName );
5b64d5d44892834ba97f003080f3467299b7c5c5jeff.schenk
5b64d5d44892834ba97f003080f3467299b7c5c5jeff.schenk /**
5b64d5d44892834ba97f003080f3467299b7c5c5jeff.schenk * Gets the default implementation for the given public content
5b64d5d44892834ba97f003080f3467299b7c5c5jeff.schenk * interface.
5b64d5d44892834ba97f003080f3467299b7c5c5jeff.schenk *
5b64d5d44892834ba97f003080f3467299b7c5c5jeff.schenk * @param javaContentInterface
5b64d5d44892834ba97f003080f3467299b7c5c5jeff.schenk * the Class object of the public interface.
5b64d5d44892834ba97f003080f3467299b7c5c5jeff.schenk *
5b64d5d44892834ba97f003080f3467299b7c5c5jeff.schenk * @return null
5b64d5d44892834ba97f003080f3467299b7c5c5jeff.schenk * If the interface is not found.
5b64d5d44892834ba97f003080f3467299b7c5c5jeff.schenk */
dff2cc5646d4437ab9e0cb1dcb59da65462a5938jeff.schenk Class getDefaultImplementation( Class javaContentInterface );
5b64d5d44892834ba97f003080f3467299b7c5c5jeff.schenk
5b64d5d44892834ba97f003080f3467299b7c5c5jeff.schenk /**
5b64d5d44892834ba97f003080f3467299b7c5c5jeff.schenk * Gets the MSV AGM which can be used to validate XML during
5b64d5d44892834ba97f003080f3467299b7c5c5jeff.schenk * marshalling/unmarshalling.
5b64d5d44892834ba97f003080f3467299b7c5c5jeff.schenk */
5b64d5d44892834ba97f003080f3467299b7c5c5jeff.schenk com.sun.msv.grammar.Grammar getGrammar() throws JAXBException;
5b64d5d44892834ba97f003080f3467299b7c5c5jeff.schenk
5b64d5d44892834ba97f003080f3467299b7c5c5jeff.schenk
dff2cc5646d4437ab9e0cb1dcb59da65462a5938jeff.schenk XMLSerializable castToXMLSerializable( Object o );
5b64d5d44892834ba97f003080f3467299b7c5c5jeff.schenk
5b64d5d44892834ba97f003080f3467299b7c5c5jeff.schenk
5b64d5d44892834ba97f003080f3467299b7c5c5jeff.schenk ValidatableObject castToValidatableObject(Object o);
5b64d5d44892834ba97f003080f3467299b7c5c5jeff.schenk}