public abstract class AbstractModelResource extends ResourceProvider.ResourceProviderRegistry implements Resource
Resource implementation.
Concurrency note: this class is *not* thread safe
Resource.Factory, Resource.NoSuchResourceException, Resource.ResourceEntry, Resource.Tools| Modifier | Constructor and Description |
|---|---|
protected |
AbstractModelResource() |
protected |
AbstractModelResource(boolean runtimeOnly) |
protected |
AbstractModelResource(boolean runtimeOnly,
Set<String> orderedChildTypes) |
protected |
AbstractModelResource(boolean runtimeOnly,
String... orderedChildTypes) |
| Modifier and Type | Method and Description |
|---|---|
abstract Resource |
clone() |
protected void |
cloneProviders(AbstractModelResource clone) |
Resource |
getChild(PathElement address)
Get a single child of this resource with the given address.
|
Set<Resource.ResourceEntry> |
getChildren(String childType)
Get the children for a given type.
|
Set<String> |
getChildrenNames(String childType)
Get the children names for a given type.
|
Set<String> |
getChildTypes()
Get a list of registered child types for this resource.
|
protected ResourceProvider |
getOrCreateProvider(String type) |
Set<String> |
getOrderedChildTypes()
Return the child types for which the order matters.
|
protected ResourceProvider |
getProvider(String type) |
boolean |
hasChild(PathElement address)
Determine whether this resource has a child with the given address.
|
boolean |
hasChildren(String childType)
Determine whether this resource has any child of a given type.
|
boolean |
isProxy() |
boolean |
isRuntime() |
Resource |
navigate(PathAddress address)
Navigate the resource tree.
|
void |
registerChild(PathElement address,
int index,
Resource resource)
Register a child resource
|
void |
registerChild(PathElement address,
Resource resource)
Register a child resource.
|
protected void |
registerResourceProvider(String type,
ResourceProvider provider) |
Resource |
removeChild(PathElement address)
Remove a child resource.
|
Resource |
requireChild(PathElement address)
Get a single child of this resource with the given address.
|
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitgetModel, isModelDefined, writeModelprotected AbstractModelResource()
protected AbstractModelResource(boolean runtimeOnly)
protected AbstractModelResource(boolean runtimeOnly,
String... orderedChildTypes)
public Resource getChild(PathElement address)
Resourcenull.public boolean hasChild(PathElement address)
ResourcePathElement has
a wildcard as value, it will determine whether this resource has any resources of a given type.public Resource requireChild(PathElement address)
ResourcerequireChild in interface Resourceaddress - the path elementpublic boolean hasChildren(String childType)
ResourcehasChildren in interface ResourcechildType - the child typetrue if there is any child of the given typepublic Resource navigate(PathAddress address)
Resourcepublic Set<String> getChildrenNames(String childType)
ResourcegetChildrenNames in interface ResourcechildType - the child typepublic Set<String> getChildTypes()
ResourcegetChildTypes in interface Resourcepublic Set<Resource.ResourceEntry> getChildren(String childType)
ResourcegetChildren in interface ResourcechildType - the child typepublic void registerChild(PathElement address, Resource resource)
ResourceregisterChild in interface Resourceaddress - the addressresource - the resourcepublic void registerChild(PathElement address, int index, Resource resource)
ResourceregisterChild in interface Resourceaddress - the addressindex - the index at which to add the resource. Existing children with this index and higher will be shifted one uoresource - the resourcepublic Resource removeChild(PathElement address)
ResourceremoveChild in interface Resourceaddress - the addresspublic Set<String> getOrderedChildTypes()
ResourcegetOrderedChildTypes in interface Resourcetrue if the order of the children matters. If there are no ordered
children and empty set is returned. This method should never return nullprotected void registerResourceProvider(String type, ResourceProvider provider)
registerResourceProvider in class ResourceProvider.ResourceProviderRegistryprotected final ResourceProvider getProvider(String type)
protected ResourceProvider getOrCreateProvider(String type)
public abstract Resource clone()
protected void cloneProviders(AbstractModelResource clone)
Copyright © 2015 JBoss by Red Hat. All rights reserved.