Class ReferenceCountingVisitor
- java.lang.Object
-
- gov.nist.secauto.oscal.lib.profile.resolver.support.AbstractCatalogVisitor<T,R>
-
- gov.nist.secauto.oscal.lib.profile.resolver.support.AbstractCatalogEntityVisitor<ReferenceCountingVisitor.Context,Void>
-
- gov.nist.secauto.oscal.lib.profile.resolver.policy.ReferenceCountingVisitor
-
- All Implemented Interfaces:
IReferenceVisitor<ReferenceCountingVisitor.Context>,ICatalogVisitor<ReferenceCountingVisitor.Context,Void>
public class ReferenceCountingVisitor extends AbstractCatalogEntityVisitor<ReferenceCountingVisitor.Context,Void> implements IReferenceVisitor<ReferenceCountingVisitor.Context>
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classReferenceCountingVisitor.Context
-
Field Summary
-
Fields inherited from class gov.nist.secauto.oscal.lib.profile.resolver.support.AbstractCatalogEntityVisitor
CHILD_PART_METAPATH
-
-
Constructor Summary
Constructors Constructor Description ReferenceCountingVisitor()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description protected VoidaggregateResults(Void first, Void second, ReferenceCountingVisitor.Context context)protected voidentityDispatch(IEntityItem entity, ReferenceCountingVisitor.Context context)static ReferenceCountingVisitorinstance()protected VoidnewDefaultResult(ReferenceCountingVisitor.Context context)protected voidresolveControl(gov.nist.secauto.metaschema.model.common.metapath.item.IRequiredValueModelNodeItem item, ReferenceCountingVisitor.Context context)voidresolveEntity(IEntityItem entity, ReferenceCountingVisitor.Context context)protected voidresolveEntity(IEntityItem entity, ReferenceCountingVisitor.Context context, BiConsumer<IEntityItem,ReferenceCountingVisitor.Context> handler)protected voidresolveGroup(gov.nist.secauto.metaschema.model.common.metapath.item.IRequiredValueModelNodeItem item, ReferenceCountingVisitor.Context context)static voidresolveLocation(IEntityItem entity, ReferenceCountingVisitor.Context context)static voidresolveParameter(IEntityItem entity, ReferenceCountingVisitor.Context context)static voidresolveResource(IEntityItem entity, ReferenceCountingVisitor.Context context)voidvisitCatalog(gov.nist.secauto.metaschema.model.common.metapath.item.IDocumentNodeItem catalogItem, IIndexer indexer, URI baseUri)VoidvisitControl(gov.nist.secauto.metaschema.model.common.metapath.item.IRequiredValueModelNodeItem item, Void childResult, ReferenceCountingVisitor.Context context)Visit the provideditemrepresenting an OSCALControland handle any enclosed references.VoidvisitGroup(gov.nist.secauto.metaschema.model.common.metapath.item.IRequiredValueModelNodeItem item, Void childResult, ReferenceCountingVisitor.Context context)Visit the provideditemrepresenting an OSCALCatalogGroupand handle any enclosed references.protected voidvisitPart(gov.nist.secauto.metaschema.model.common.metapath.item.IRequiredValueModelNodeItem item, gov.nist.secauto.metaschema.model.common.metapath.item.IRequiredValueModelNodeItem groupOrControlItem, ReferenceCountingVisitor.Context context)Called when visiting a part.protected voidvisitParts(gov.nist.secauto.metaschema.model.common.metapath.item.IRequiredValueModelNodeItem groupOrControlItem, ReferenceCountingVisitor.Context context)-
Methods inherited from class gov.nist.secauto.oscal.lib.profile.resolver.support.AbstractCatalogEntityVisitor
getItemTypesToVisit, isVisitedItemType, visitBackMatter, visitCatalog, visitControlContainer, visitControlInternal, visitGroupContainer, visitGroupInternal, visitLocation, visitMetadata, visitParameter, visitParty, visitResource, visitRole
-
Methods inherited from class gov.nist.secauto.oscal.lib.profile.resolver.support.AbstractCatalogVisitor
visitControlItem, visitGroupItem
-
-
-
-
Constructor Detail
-
ReferenceCountingVisitor
public ReferenceCountingVisitor()
-
-
Method Detail
-
instance
public static ReferenceCountingVisitor instance()
-
newDefaultResult
protected Void newDefaultResult(ReferenceCountingVisitor.Context context)
- Specified by:
newDefaultResultin classAbstractCatalogVisitor<ReferenceCountingVisitor.Context,Void>
-
aggregateResults
protected Void aggregateResults(Void first, Void second, ReferenceCountingVisitor.Context context)
- Specified by:
aggregateResultsin classAbstractCatalogVisitor<ReferenceCountingVisitor.Context,Void>
-
visitCatalog
public void visitCatalog(@NonNull gov.nist.secauto.metaschema.model.common.metapath.item.IDocumentNodeItem catalogItem, @NonNull IIndexer indexer, @NonNull URI baseUri)
-
visitGroup
public Void visitGroup(@NonNull gov.nist.secauto.metaschema.model.common.metapath.item.IRequiredValueModelNodeItem item, Void childResult, ReferenceCountingVisitor.Context context)
Description copied from interface:IReferenceVisitorVisit the provideditemrepresenting an OSCALCatalogGroupand handle any enclosed references.- Specified by:
visitGroupin interfaceICatalogVisitor<ReferenceCountingVisitor.Context,Void>- Specified by:
visitGroupin interfaceIReferenceVisitor<ReferenceCountingVisitor.Context>- Parameters:
item- the Metapath node item containing reference nodeschildResult- the result of evaluating the group's childrencontext- the calling context information- Returns:
- a meaningful result of the given type
-
visitControl
public Void visitControl(@NonNull gov.nist.secauto.metaschema.model.common.metapath.item.IRequiredValueModelNodeItem item, Void childResult, ReferenceCountingVisitor.Context context)
Description copied from interface:IReferenceVisitorVisit the provideditemrepresenting an OSCALControland handle any enclosed references.- Specified by:
visitControlin interfaceICatalogVisitor<ReferenceCountingVisitor.Context,Void>- Specified by:
visitControlin interfaceIReferenceVisitor<ReferenceCountingVisitor.Context>- Parameters:
item- the Metapath node item containing reference nodeschildResult- the result of evaluating the control's childrencontext- the calling context information- Returns:
- a meaningful result of the given type
-
visitParts
protected void visitParts(@NonNull gov.nist.secauto.metaschema.model.common.metapath.item.IRequiredValueModelNodeItem groupOrControlItem, ReferenceCountingVisitor.Context context)
- Overrides:
visitPartsin classAbstractCatalogEntityVisitor<ReferenceCountingVisitor.Context,Void>
-
visitPart
protected void visitPart(gov.nist.secauto.metaschema.model.common.metapath.item.IRequiredValueModelNodeItem item, gov.nist.secauto.metaschema.model.common.metapath.item.IRequiredValueModelNodeItem groupOrControlItem, ReferenceCountingVisitor.Context context)
Description copied from class:AbstractCatalogEntityVisitorCalled when visiting a part.Can be overridden by classes extending this interface to support processing of the visited object.
- Overrides:
visitPartin classAbstractCatalogEntityVisitor<ReferenceCountingVisitor.Context,Void>- Parameters:
item- the Metapath item for the partgroupOrControlItem- the part's parent Metapath itemcontext- the calling context information
-
resolveGroup
protected void resolveGroup(@NonNull gov.nist.secauto.metaschema.model.common.metapath.item.IRequiredValueModelNodeItem item, @NonNull ReferenceCountingVisitor.Context context)
-
resolveControl
protected void resolveControl(@NonNull gov.nist.secauto.metaschema.model.common.metapath.item.IRequiredValueModelNodeItem item, @NonNull ReferenceCountingVisitor.Context context)
-
resolveLocation
public static void resolveLocation(@NonNull IEntityItem entity, @NonNull ReferenceCountingVisitor.Context context)
-
resolveResource
public static void resolveResource(@NonNull IEntityItem entity, @NonNull ReferenceCountingVisitor.Context context)
-
resolveParameter
public static void resolveParameter(@NonNull IEntityItem entity, @NonNull ReferenceCountingVisitor.Context context)
-
resolveEntity
protected void resolveEntity(@NonNull IEntityItem entity, @NonNull ReferenceCountingVisitor.Context context, @NonNull BiConsumer<IEntityItem,ReferenceCountingVisitor.Context> handler)
-
resolveEntity
public void resolveEntity(@NonNull IEntityItem entity, @NonNull ReferenceCountingVisitor.Context context)
-
entityDispatch
protected void entityDispatch(@NonNull IEntityItem entity, @NonNull ReferenceCountingVisitor.Context context)
-
-