|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectedu.memphis.ccrg.lida.framework.shared.UnmodifiableNodeStructureImpl
public class UnmodifiableNodeStructureImpl
An immutable NodeStructureImpl. Throws UnsupportedOperationException
if any methods
which modify NodeStructureImpl
are called.
Constructor Summary | |
---|---|
UnmodifiableNodeStructureImpl(NodeStructure sourceNodeStructure)
Default Constructor. |
|
UnmodifiableNodeStructureImpl(NodeStructure sourceNodeStructure,
boolean shouldCopy)
Default Constructor. |
Method Summary | |
---|---|
Link |
addDefaultLink(int idSource,
ExtendedId idSink,
LinkCategory type,
double activation,
double removalThreshold)
Creates and adds a new Link with specified attributes. |
Link |
addDefaultLink(int idSource,
int idSink,
LinkCategory type,
double activation,
double removalThreshold)
Creates and adds a new Link with specified attributes. |
Link |
addDefaultLink(Link l)
Copies specified Link and then adds the copy to this NodeStructure. |
Link |
addDefaultLink(Node source,
Linkable sink,
LinkCategory category,
double activation,
double removalThreshold)
|
java.util.Collection<Link> |
addDefaultLinks(java.util.Collection<Link> links)
Copies specified Links and then adds the copies to this NodeStructure. |
Node |
addDefaultNode(Node n)
Adds a COPY of specified Node to this NodeStructure. |
java.util.Collection<Node> |
addDefaultNodes(java.util.Collection<Node> nodes)
|
Link |
addLink(Link l,
java.lang.String linkType)
Adds copy of specified Link. |
Node |
addNode(Node n,
java.lang.String factoryType)
Add a Node of a specified factory type to this NodeStructure |
void |
clearLinks()
Removes all links from this NodeStructure |
void |
clearNodeStructure()
Removes all nodes and links from this nodestructure |
boolean |
containsLink(ExtendedId id)
Returns whether this NodeStructure contains Link with specified ExtendedId . |
boolean |
containsLink(Link l)
Returns whether this NodeStructure contains specified Link. |
boolean |
containsLinkable(ExtendedId id)
Returns whether this NodeStructure contains Linkable with specified ExtendedId . |
boolean |
containsLinkable(Linkable l)
Returns whether this NodeStructure contains specified Linkable . |
boolean |
containsNode(ExtendedId id)
Returns whether this NodeStructure contains Node with specified ExtendedId. |
boolean |
containsNode(int id)
Returns whether this NodeStructure contains Node with specified id. |
boolean |
containsNode(Node n)
Returns whether this NodeStructure contains specified Node. |
NodeStructure |
copy()
Returns a deep copy of this NodeStructure |
void |
decayNodeStructure(long ticks)
Decays the Linkable s of this NodeStructure . |
boolean |
equals(java.lang.Object o)
Returns true if both NodeStructures have the same nodes and links. |
java.util.Set<Link> |
getAttachedLinks(Linkable l)
Gets all Link s directly connected to specified Linkable. |
java.util.Set<Link> |
getAttachedLinks(Linkable linkable,
LinkCategory cat)
Gets all Link s directly connected to specified Linkable with specified LinkCategory |
java.util.Map<Linkable,Link> |
getConnectedSinks(Node n)
Finds and returns a Map of all sink Linkable s connected to specified Node . |
java.util.Map<Node,Link> |
getConnectedSources(Linkable linkable)
Finds and returns a Map of all source Nodes connected to specified Linkable . |
java.lang.String |
getDefaultLinkType()
Gets defaultLinkType |
java.lang.String |
getDefaultNodeType()
Gets defaultNodeType |
Link |
getLink(ExtendedId ids)
Gets Link with specified ExtendedId if present. |
Linkable |
getLinkable(ExtendedId eid)
Gets Linkable with specified ExtendedId |
int |
getLinkableCount()
Returns count of Linkable s |
java.util.Map<Linkable,java.util.Set<Link>> |
getLinkableMap()
Returns linkableMap |
java.util.Collection<Linkable> |
getLinkables()
Returns all Linkables, all Nodes and Links, in this NodeStructure |
int |
getLinkCount()
returns a count of links |
java.util.Collection<Link> |
getLinks()
Returns the Links of this NodeStructure |
java.util.Set<Link> |
getLinks(LinkCategory cat)
Returns all Links of this NodeStructure with specified LinkCategory |
Node |
getNode(ExtendedId eid)
Returns a copy of the node in this nodestructure with specified ExtendedId |
Node |
getNode(int id)
Returns a copy of the node in this nodestructure with specified id |
int |
getNodeCount()
Returns a count of nodes |
java.util.Collection<Node> |
getNodes()
Returns all Node s |
int |
hashCode()
|
void |
mergeWith(NodeStructure ns)
Merges specified NodeStructure into this one. |
void |
removeLink(Link l)
Removes specified Link if present. |
void |
removeLinkable(ExtendedId id)
Removes Linkable with specified ExtendedId if present. |
void |
removeLinkable(Linkable l)
Removes specified Linkable if present. |
void |
removeNode(Node n)
Removes specified Node if present. |
Methods inherited from class java.lang.Object |
---|
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public UnmodifiableNodeStructureImpl(NodeStructure sourceNodeStructure)
sourceNodeStructure
- supplied NodeStructurepublic UnmodifiableNodeStructureImpl(NodeStructure sourceNodeStructure, boolean shouldCopy)
sourceNodeStructure
- supplied NodeStructureshouldCopy
- If true, the supplied NodeStructure will be copied. Otherwise supplied NodeStructure
will be used directly.Method Detail |
---|
public boolean equals(java.lang.Object o)
equals
in class java.lang.Object
o
- ObjectObject.equals(java.lang.Object)
public int hashCode()
hashCode
in class java.lang.Object
public NodeStructure copy()
NodeStructure
NodeStructure
copy
in interface NodeStructure
NodeStructure
public Link addDefaultLink(Link l)
NodeStructure
NodeStructure
when
it is added.
addDefaultLink
in interface NodeStructure
l
- Link to copy and add.
java.lang.UnsupportedOperationException
- Cannot modify this object once created.public Link addDefaultLink(int idSource, ExtendedId idSink, LinkCategory type, double activation, double removalThreshold)
NodeStructure
addDefaultLink
in interface NodeStructure
idSource
- id of link's sourceidSink
- ExtendedId
of link's sinktype
- Link's LinkCategory
activation
- initial link activationremovalThreshold
- amount of activation Link must maintain to remain in this NodeStructure after decaying.
java.lang.UnsupportedOperationException
- Cannot modify this object once created.public Link addDefaultLink(int idSource, int idSink, LinkCategory type, double activation, double removalThreshold)
NodeStructure
addDefaultLink
in interface NodeStructure
idSource
- id of link's sourceidSink
- id of link's sinktype
- Link's LinkCategory
activation
- initial link activationremovalThreshold
- amount of activation Link must maintain to remain in this NodeStructure after decaying.
java.lang.UnsupportedOperationException
- Cannot modify this object once created.public java.util.Collection<Link> addDefaultLinks(java.util.Collection<Link> links)
NodeStructure
NodeStructure
when
they are added.
Note if Links in supplied Collection link to each other then this method does NOT guarantee
that all Links will be added properly. Links should be added one at a time in this case after
the dependent links are already present.
addDefaultLinks
in interface NodeStructure
links
- Links to copy and add.
java.lang.UnsupportedOperationException
- Cannot modify this object once created.public Node addDefaultNode(Node n)
NodeStructure
addDefaultNode
in interface NodeStructure
n
- Node to add.
java.lang.UnsupportedOperationException
- Cannot modify this object once created.public Link addLink(Link l, java.lang.String linkType)
NodeStructure
addLink
in interface NodeStructure
l
- original Link
linkType
- type of copied Link
Link
or null if such a link cannot be created.
java.lang.UnsupportedOperationException
- Cannot modify this object once created.public Node addNode(Node n, java.lang.String factoryType)
NodeStructure
addNode
in interface NodeStructure
n
- NodefactoryType
- name of node's type in the factory
java.lang.UnsupportedOperationException
- Cannot modify this object once created.public java.util.Collection<Node> addDefaultNodes(java.util.Collection<Node> nodes)
addDefaultNodes
in interface NodeStructure
nodes
- Node to be added.
java.lang.UnsupportedOperationException
- Cannot modify this object once created.NodeStructure.addDefaultNode(Node)
public void removeLink(Link l)
NodeStructure
Link
if present.
removeLink
in interface NodeStructure
l
- Link to remove.
java.lang.UnsupportedOperationException
- Cannot modify this object once created.public void removeLinkable(Linkable l)
NodeStructure
Linkable
if present.
removeLinkable
in interface NodeStructure
l
- Linkable to remove.
java.lang.UnsupportedOperationException
- Cannot modify this object once created.public void removeNode(Node n)
NodeStructure
Node
if present.
removeNode
in interface NodeStructure
n
- Node to remove.
java.lang.UnsupportedOperationException
- Cannot modify this object once created.public void removeLinkable(ExtendedId id)
NodeStructure
Linkable
with specified ExtendedId
if present.
removeLinkable
in interface NodeStructure
id
- ExtendedId of Linkable to remove.
java.lang.UnsupportedOperationException
- Cannot modify this object once created.public void clearLinks()
NodeStructure
NodeStructure
clearLinks
in interface NodeStructure
java.lang.UnsupportedOperationException
- Cannot modify this object once created.public void clearNodeStructure()
NodeStructure
clearNodeStructure
in interface NodeStructure
java.lang.UnsupportedOperationException
- Cannot modify this object once created.public void mergeWith(NodeStructure ns)
NodeStructure
mergeWith
in interface NodeStructure
ns
- NodeStructure
java.lang.UnsupportedOperationException
- Cannot modify this object once created.public Link addDefaultLink(Node source, Linkable sink, LinkCategory category, double activation, double removalThreshold)
addDefaultLink
in interface NodeStructure
source
- Link's source Node
sink
- Link's sink, a Node
or a Link
category
- Link's LinkCategory
activation
- initial link activationremovalThreshold
- amount of activation Link must maintain to remain in this NodeStructure after decaying.
public void decayNodeStructure(long ticks)
NodeStructure
Linkable
s of this NodeStructure
.
decayNodeStructure
in interface NodeStructure
ticks
- the number of ticks to decay for.public boolean containsLink(Link l)
NodeStructure
containsLink
in interface NodeStructure
l
- Link checked for.
public boolean containsLink(ExtendedId id)
NodeStructure
ExtendedId
.
containsLink
in interface NodeStructure
id
- Link checked for.
Link
with the same ExtendedId
.public boolean containsLinkable(Linkable l)
NodeStructure
Linkable
.
containsLinkable
in interface NodeStructure
l
- Linkable
checked for.
Linkable
with the same ExtendedId
.public boolean containsLinkable(ExtendedId id)
NodeStructure
Linkable
with specified ExtendedId
.
containsLinkable
in interface NodeStructure
id
- Linkable
checked for.
Linkable
with the same ExtendedId
.public boolean containsNode(Node n)
NodeStructure
containsNode
in interface NodeStructure
n
- Node checked for.
public boolean containsNode(int id)
NodeStructure
containsNode
in interface NodeStructure
id
- id of Node checked for.
public boolean containsNode(ExtendedId id)
NodeStructure
containsNode
in interface NodeStructure
id
- ExtendedId of Node checked for.
public java.util.Set<Link> getAttachedLinks(Linkable l)
NodeStructure
Link
s directly connected to specified Linkable.
getAttachedLinks
in interface NodeStructure
l
- Linkable to find Links to and from.
public java.util.Set<Link> getAttachedLinks(Linkable linkable, LinkCategory cat)
NodeStructure
Link
s directly connected to specified Linkable with specified LinkCategory
getAttachedLinks
in interface NodeStructure
linkable
- a Linkablecat
- LinkCategory
public java.util.Map<Linkable,Link> getConnectedSinks(Node n)
NodeStructure
Map
of all sink Linkable
s connected to specified Node
.
Keys are the connected sinks
Values are the Link
s connecting the sinks to the specified Node
getConnectedSinks
in interface NodeStructure
n
- supplied node
public java.util.Map<Node,Link> getConnectedSources(Linkable linkable)
NodeStructure
Map
of all source Nodes connected to specified Linkable
.
Keys are the connected sources
Values are the Link
s connecting the sources to the specified Linkable
getConnectedSources
in interface NodeStructure
linkable
- specified linkable
public java.lang.String getDefaultLinkType()
NodeStructure
getDefaultLinkType
in interface NodeStructure
public java.lang.String getDefaultNodeType()
NodeStructure
getDefaultNodeType
in interface NodeStructure
public Link getLink(ExtendedId ids)
NodeStructure
getLink
in interface NodeStructure
ids
- ExtendedId
of sought Link.
public int getLinkCount()
NodeStructure
getLinkCount
in interface NodeStructure
public Linkable getLinkable(ExtendedId eid)
NodeStructure
Linkable
with specified ExtendedId
getLinkable
in interface NodeStructure
eid
- ExtendedId
public int getLinkableCount()
NodeStructure
Linkable
s
getLinkableCount
in interface NodeStructure
Linkable
spublic java.util.Map<Linkable,java.util.Set<Link>> getLinkableMap()
NodeStructure
getLinkableMap
in interface NodeStructure
public java.util.Collection<Linkable> getLinkables()
NodeStructure
NodeStructure
getLinkables
in interface NodeStructure
public java.util.Collection<Link> getLinks()
NodeStructure
getLinks
in interface NodeStructure
public java.util.Set<Link> getLinks(LinkCategory cat)
NodeStructure
LinkCategory
getLinks
in interface NodeStructure
cat
- LinkCategory to search for.
LinkCategory
public Node getNode(int id)
NodeStructure
getNode
in interface NodeStructure
id
- id of node
public Node getNode(ExtendedId eid)
NodeStructure
getNode
in interface NodeStructure
eid
- ExtendedId of node
public int getNodeCount()
NodeStructure
getNodeCount
in interface NodeStructure
public java.util.Collection<Node> getNodes()
NodeStructure
Node
s
getNodes
in interface NodeStructure
Node
s in this NodeStructure.
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |