Interface SchemaRegistryState

All Superinterfaces:
DebugDumpable, DefinitionsStore, GlobalDefinitionsStore
All Known Subinterfaces:
SchemaRegistry

public interface SchemaRegistryState extends DebugDumpable, GlobalDefinitionsStore
Maintains system-wide parsed schemas.
  • Method Details

    • getSchemas

      Collection<PrismSchema> getSchemas()
    • getPrismSchema

      PrismSchema getPrismSchema(String namespace)
    • getJavaxSchema

      Schema getJavaxSchema()
    • getNamespacePrefixMapper

      DynamicNamespacePrefixMapper getNamespacePrefixMapper()
      // * @return System-wide "standard prefixes" registry. //
    • resolveUnqualifiedTypeName

      QName resolveUnqualifiedTypeName(QName type) throws SchemaException
      Throws:
      SchemaException
    • determineParentDefinition

      ComplexTypeDefinition determineParentDefinition(@NotNull @NotNull ComplexTypeDefinition child, @NotNull @NotNull ItemPath rest)
    • determineCompileTimeClass

      <T> Class<T> determineCompileTimeClass(QName typeName)
    • findSchemaByCompileTimeClass

      PrismSchema findSchemaByCompileTimeClass(@NotNull @NotNull Class<?> compileTimeClass)
    • findSchemaDescriptionByNamespace

      SchemaDescription findSchemaDescriptionByNamespace(String namespaceURI)
    • findSchemaDescriptionByPrefix

      SchemaDescription findSchemaDescriptionByPrefix(String prefix)
    • findSchemaByNamespace

      PrismSchema findSchemaByNamespace(String namespaceURI)
    • determineClassForType

      <T> Class<T> determineClassForType(QName type)
    • determineCompileTimeClassInternal

      <T> Class<T> determineCompileTimeClassInternal(QName type, boolean cacheAlsoNegativeResults)
    • getCompileTimePackages

      Collection<Package> getCompileTimePackages()
    • isList

      @NotNull @NotNull SchemaRegistryState.IsList isList(@Nullable @Nullable QName xsiType, @NotNull @NotNull QName elementName)
      Checks whether element with given (declared) xsi:type and name can be a heterogeneous list.
      Returns:
      YES if it is a list, NO if it's not, MAYBE if it probably is a list but some further content-based checks are needed