Interface PrismSchema
- All Superinterfaces:
Cloneable
,DebugDumpable
,DefinitionSearchImplementation
,DefinitionsStore
,Freezable
,GlobalDefinitionsStore
- All Known Subinterfaces:
BareResourceSchema
,CompleteResourceSchema
,ConnectorSchema
,ResourceSchema
- All Known Implementing Classes:
BareResourceSchemaImpl
,CompleteResourceSchemaImpl
,ConnectorSchemaImpl
,com.evolveum.midpoint.prism.impl.schema.PrismSchemaImpl
,ResourceSchemaImpl
public interface PrismSchema
extends DebugDumpable, GlobalDefinitionsStore, DefinitionSearchImplementation, Freezable, Cloneable
Schema as a collection of definitions. This is a midPoint-specific view of
schema definition. It is just a collection of definitions grouped under a
specific namespace.
The schema and all the public classes in this package define a schema
meta-model. It is supposed to be used for run-time schema interpretation. It
will not be a convenient tool to work with static data model objects such as
user or role. But it is needed for interpreting dynamic schemas for resource
objects, extensions and so on.
- Author:
- semancik
-
Nested Class Summary
Nested ClassesModifier and TypeInterfaceDescriptionstatic interface
Object that allows modifying aPrismSchema
- unless it's immutable. -
Field Summary
Fields inherited from interface com.evolveum.midpoint.util.DebugDumpable
INDENT_STRING
-
Method Summary
Modifier and TypeMethodDescriptionbuilder()
default @NotNull List<ComplexTypeDefinition>
@NotNull Collection<Definition>
Returns all definitions: both types and items.<T extends Definition>
@NotNull List<T>getDefinitions
(@NotNull Class<T> type) Returns a collection of definitions of a given type.@NotNull String
All top-level definitions (types, items) are in this namespace.default @NotNull List<? extends PrismObjectDefinition<?>>
com.google.common.collect.Multimap<QName,
ItemDefinition<?>> default boolean
isEmpty()
Just a convenience method.boolean
mutator()
@NotNull Document
default int
size()
Just a convenience method.Methods inherited from interface com.evolveum.midpoint.util.DebugDumpable
debugDump, debugDump, debugDumpLazily, debugDumpLazily
Methods inherited from interface com.evolveum.midpoint.prism.Freezable
checkImmutable, checkMutable, freeze, isImmutable
Methods inherited from interface com.evolveum.midpoint.prism.schema.GlobalDefinitionsStore
findComplexTypeDefinitionByCompileTimeClass, findComplexTypeDefinitionByType, findContainerDefinitionByCompileTimeClass, findContainerDefinitionByElementName, findContainerDefinitionByType, findItemDefinitionByCompileTimeClass, findItemDefinitionByElementName, findItemDefinitionByElementName, findItemDefinitionByType, findItemDefinitionByType, findItemDefinitionsByCompileTimeClass, findItemDefinitionsByElementName, findItemDefinitionsByElementName, findObjectDefinitionByCompileTimeClass, findObjectDefinitionByElementName, findObjectDefinitionByType, findPropertyDefinitionByElementName, findReferenceDefinitionByElementName, findSimpleTypeDefinitionByType, findTypeDefinitionByCompileTimeClass, findTypeDefinitionByType, findTypeDefinitionByType, findTypeDefinitionsByElementName, findTypeDefinitionsByType, findTypeDefinitionsByType
-
Method Details
-
getNamespace
All top-level definitions (types, items) are in this namespace. -
getDefinitions
Returns all definitions: both types and items. Their order is insignificant. The collection is unmodifiable. The returned value should not be used for looking up specific definitions, as there may be thousands of them. Use more specific lookup methods instead. -
size
default int size()Just a convenience method. Useful for diagnostics & tests. -
isEmpty
default boolean isEmpty()Just a convenience method. Primarily for tests. -
getDefinitions
Returns a collection of definitions of a given type. Similar togetDefinitions()
. -
getObjectDefinitions
-
getComplexTypeDefinitions
-
serializeToXsd
- Throws:
SchemaException
-
getSubstitutions
com.google.common.collect.Multimap<QName,ItemDefinition<?>> getSubstitutions() -
isRuntime
boolean isRuntime() -
getSourceDescription
String getSourceDescription() -
mutator
PrismSchema.PrismSchemaMutator mutator() -
builder
SchemaBuilder builder()
-