public class oadd.org.apache.commons.configuration.tree.TrackedNodeModel extends java.lang.Object implements oadd.org.apache.commons.configuration.tree.NodeModel
{
private final oadd.org.apache.commons.configuration.tree.InMemoryNodeModelSupport parentModelSupport;
private final oadd.org.apache.commons.configuration.tree.NodeSelector selector;
private final boolean releaseTrackedNodeOnFinalize;
private final java.util.concurrent.atomic.AtomicBoolean closed;
public void <init>(oadd.org.apache.commons.configuration.tree.InMemoryNodeModelSupport, oadd.org.apache.commons.configuration.tree.NodeSelector, boolean)
{
oadd.org.apache.commons.configuration.tree.InMemoryNodeModelSupport v;
java.util.concurrent.atomic.AtomicBoolean v;
java.lang.IllegalArgumentException v, v;
oadd.org.apache.commons.configuration.tree.TrackedNodeModel v;
boolean v;
oadd.org.apache.commons.configuration.tree.NodeSelector v;
v := @this: oadd.org.apache.commons.configuration.tree.TrackedNodeModel;
v := @parameter: oadd.org.apache.commons.configuration.tree.InMemoryNodeModelSupport;
v := @parameter: oadd.org.apache.commons.configuration.tree.NodeSelector;
v := @parameter: boolean;
specialinvoke v.<java.lang.Object: void <init>()>();
if v != null goto label;
v = new java.lang.IllegalArgumentException;
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>("Underlying model support must not be null!");
throw v;
label:
if v != null goto label;
v = new java.lang.IllegalArgumentException;
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>("Selector must not be null!");
throw v;
label:
v.<oadd.org.apache.commons.configuration.tree.TrackedNodeModel: oadd.org.apache.commons.configuration.tree.InMemoryNodeModelSupport parentModelSupport> = v;
v.<oadd.org.apache.commons.configuration.tree.TrackedNodeModel: oadd.org.apache.commons.configuration.tree.NodeSelector selector> = v;
v.<oadd.org.apache.commons.configuration.tree.TrackedNodeModel: boolean releaseTrackedNodeOnFinalize> = v;
v = new java.util.concurrent.atomic.AtomicBoolean;
specialinvoke v.<java.util.concurrent.atomic.AtomicBoolean: void <init>()>();
v.<oadd.org.apache.commons.configuration.tree.TrackedNodeModel: java.util.concurrent.atomic.AtomicBoolean closed> = v;
return;
}
public oadd.org.apache.commons.configuration.tree.InMemoryNodeModelSupport getParentModelSupport()
{
oadd.org.apache.commons.configuration.tree.InMemoryNodeModelSupport v;
oadd.org.apache.commons.configuration.tree.TrackedNodeModel v;
v := @this: oadd.org.apache.commons.configuration.tree.TrackedNodeModel;
v = v.<oadd.org.apache.commons.configuration.tree.TrackedNodeModel: oadd.org.apache.commons.configuration.tree.InMemoryNodeModelSupport parentModelSupport>;
return v;
}
public oadd.org.apache.commons.configuration.tree.InMemoryNodeModel getParentModel()
{
oadd.org.apache.commons.configuration.tree.InMemoryNodeModelSupport v;
oadd.org.apache.commons.configuration.tree.InMemoryNodeModel v;
oadd.org.apache.commons.configuration.tree.TrackedNodeModel v;
v := @this: oadd.org.apache.commons.configuration.tree.TrackedNodeModel;
v = virtualinvoke v.<oadd.org.apache.commons.configuration.tree.TrackedNodeModel: oadd.org.apache.commons.configuration.tree.InMemoryNodeModelSupport getParentModelSupport()>();
v = interfaceinvoke v.<oadd.org.apache.commons.configuration.tree.InMemoryNodeModelSupport: oadd.org.apache.commons.configuration.tree.InMemoryNodeModel getNodeModel()>();
return v;
}
public oadd.org.apache.commons.configuration.tree.NodeSelector getSelector()
{
oadd.org.apache.commons.configuration.tree.TrackedNodeModel v;
oadd.org.apache.commons.configuration.tree.NodeSelector v;
v := @this: oadd.org.apache.commons.configuration.tree.TrackedNodeModel;
v = v.<oadd.org.apache.commons.configuration.tree.TrackedNodeModel: oadd.org.apache.commons.configuration.tree.NodeSelector selector>;
return v;
}
public boolean isReleaseTrackedNodeOnFinalize()
{
oadd.org.apache.commons.configuration.tree.TrackedNodeModel v;
boolean v;
v := @this: oadd.org.apache.commons.configuration.tree.TrackedNodeModel;
v = v.<oadd.org.apache.commons.configuration.tree.TrackedNodeModel: boolean releaseTrackedNodeOnFinalize>;
return v;
}
public void setRootNode(oadd.org.apache.commons.configuration.tree.ImmutableNode)
{
oadd.org.apache.commons.configuration.tree.InMemoryNodeModel v;
oadd.org.apache.commons.configuration.tree.ImmutableNode v;
oadd.org.apache.commons.configuration.tree.TrackedNodeModel v;
oadd.org.apache.commons.configuration.tree.NodeSelector v;
v := @this: oadd.org.apache.commons.configuration.tree.TrackedNodeModel;
v := @parameter: oadd.org.apache.commons.configuration.tree.ImmutableNode;
v = virtualinvoke v.<oadd.org.apache.commons.configuration.tree.TrackedNodeModel: oadd.org.apache.commons.configuration.tree.InMemoryNodeModel getParentModel()>();
v = virtualinvoke v.<oadd.org.apache.commons.configuration.tree.TrackedNodeModel: oadd.org.apache.commons.configuration.tree.NodeSelector getSelector()>();
virtualinvoke v.<oadd.org.apache.commons.configuration.tree.InMemoryNodeModel: void replaceTrackedNode(oadd.org.apache.commons.configuration.tree.NodeSelector,oadd.org.apache.commons.configuration.tree.ImmutableNode)>(v, v);
return;
}
public oadd.org.apache.commons.configuration.tree.NodeHandler getNodeHandler()
{
oadd.org.apache.commons.configuration.tree.InMemoryNodeModel v;
oadd.org.apache.commons.configuration.tree.NodeHandler v;
oadd.org.apache.commons.configuration.tree.TrackedNodeModel v;
oadd.org.apache.commons.configuration.tree.NodeSelector v;
v := @this: oadd.org.apache.commons.configuration.tree.TrackedNodeModel;
v = virtualinvoke v.<oadd.org.apache.commons.configuration.tree.TrackedNodeModel: oadd.org.apache.commons.configuration.tree.InMemoryNodeModel getParentModel()>();
v = virtualinvoke v.<oadd.org.apache.commons.configuration.tree.TrackedNodeModel: oadd.org.apache.commons.configuration.tree.NodeSelector getSelector()>();
v = virtualinvoke v.<oadd.org.apache.commons.configuration.tree.InMemoryNodeModel: oadd.org.apache.commons.configuration.tree.NodeHandler getTrackedNodeHandler(oadd.org.apache.commons.configuration.tree.NodeSelector)>(v);
return v;
}
public void addProperty(java.lang.String, java.lang.Iterable, oadd.org.apache.commons.configuration.tree.NodeKeyResolver)
{
oadd.org.apache.commons.configuration.tree.InMemoryNodeModel v;
java.lang.String v;
oadd.org.apache.commons.configuration.tree.NodeKeyResolver v;
java.lang.Iterable v;
oadd.org.apache.commons.configuration.tree.TrackedNodeModel v;
oadd.org.apache.commons.configuration.tree.NodeSelector v;
v := @this: oadd.org.apache.commons.configuration.tree.TrackedNodeModel;
v := @parameter: java.lang.String;
v := @parameter: java.lang.Iterable;
v := @parameter: oadd.org.apache.commons.configuration.tree.NodeKeyResolver;
v = virtualinvoke v.<oadd.org.apache.commons.configuration.tree.TrackedNodeModel: oadd.org.apache.commons.configuration.tree.InMemoryNodeModel getParentModel()>();
v = virtualinvoke v.<oadd.org.apache.commons.configuration.tree.TrackedNodeModel: oadd.org.apache.commons.configuration.tree.NodeSelector getSelector()>();
virtualinvoke v.<oadd.org.apache.commons.configuration.tree.InMemoryNodeModel: void addProperty(java.lang.String,oadd.org.apache.commons.configuration.tree.NodeSelector,java.lang.Iterable,oadd.org.apache.commons.configuration.tree.NodeKeyResolver)>(v, v, v, v);
return;
}
public void addNodes(java.lang.String, java.util.Collection, oadd.org.apache.commons.configuration.tree.NodeKeyResolver)
{
oadd.org.apache.commons.configuration.tree.InMemoryNodeModel v;
java.util.Collection v;
java.lang.String v;
oadd.org.apache.commons.configuration.tree.NodeKeyResolver v;
oadd.org.apache.commons.configuration.tree.TrackedNodeModel v;
oadd.org.apache.commons.configuration.tree.NodeSelector v;
v := @this: oadd.org.apache.commons.configuration.tree.TrackedNodeModel;
v := @parameter: java.lang.String;
v := @parameter: java.util.Collection;
v := @parameter: oadd.org.apache.commons.configuration.tree.NodeKeyResolver;
v = virtualinvoke v.<oadd.org.apache.commons.configuration.tree.TrackedNodeModel: oadd.org.apache.commons.configuration.tree.InMemoryNodeModel getParentModel()>();
v = virtualinvoke v.<oadd.org.apache.commons.configuration.tree.TrackedNodeModel: oadd.org.apache.commons.configuration.tree.NodeSelector getSelector()>();
virtualinvoke v.<oadd.org.apache.commons.configuration.tree.InMemoryNodeModel: void addNodes(java.lang.String,oadd.org.apache.commons.configuration.tree.NodeSelector,java.util.Collection,oadd.org.apache.commons.configuration.tree.NodeKeyResolver)>(v, v, v, v);
return;
}
public void setProperty(java.lang.String, java.lang.Object, oadd.org.apache.commons.configuration.tree.NodeKeyResolver)
{
oadd.org.apache.commons.configuration.tree.InMemoryNodeModel v;
java.lang.Object v;
java.lang.String v;
oadd.org.apache.commons.configuration.tree.NodeKeyResolver v;
oadd.org.apache.commons.configuration.tree.TrackedNodeModel v;
oadd.org.apache.commons.configuration.tree.NodeSelector v;
v := @this: oadd.org.apache.commons.configuration.tree.TrackedNodeModel;
v := @parameter: java.lang.String;
v := @parameter: java.lang.Object;
v := @parameter: oadd.org.apache.commons.configuration.tree.NodeKeyResolver;
v = virtualinvoke v.<oadd.org.apache.commons.configuration.tree.TrackedNodeModel: oadd.org.apache.commons.configuration.tree.InMemoryNodeModel getParentModel()>();
v = virtualinvoke v.<oadd.org.apache.commons.configuration.tree.TrackedNodeModel: oadd.org.apache.commons.configuration.tree.NodeSelector getSelector()>();
virtualinvoke v.<oadd.org.apache.commons.configuration.tree.InMemoryNodeModel: void setProperty(java.lang.String,oadd.org.apache.commons.configuration.tree.NodeSelector,java.lang.Object,oadd.org.apache.commons.configuration.tree.NodeKeyResolver)>(v, v, v, v);
return;
}
public java.util.List clearTree(java.lang.String, oadd.org.apache.commons.configuration.tree.NodeKeyResolver)
{
java.util.List v;
oadd.org.apache.commons.configuration.tree.InMemoryNodeModel v;
java.lang.String v;
oadd.org.apache.commons.configuration.tree.NodeKeyResolver v;
oadd.org.apache.commons.configuration.tree.TrackedNodeModel v;
oadd.org.apache.commons.configuration.tree.NodeSelector v;
v := @this: oadd.org.apache.commons.configuration.tree.TrackedNodeModel;
v := @parameter: java.lang.String;
v := @parameter: oadd.org.apache.commons.configuration.tree.NodeKeyResolver;
v = virtualinvoke v.<oadd.org.apache.commons.configuration.tree.TrackedNodeModel: oadd.org.apache.commons.configuration.tree.InMemoryNodeModel getParentModel()>();
v = virtualinvoke v.<oadd.org.apache.commons.configuration.tree.TrackedNodeModel: oadd.org.apache.commons.configuration.tree.NodeSelector getSelector()>();
v = virtualinvoke v.<oadd.org.apache.commons.configuration.tree.InMemoryNodeModel: java.util.List clearTree(java.lang.String,oadd.org.apache.commons.configuration.tree.NodeSelector,oadd.org.apache.commons.configuration.tree.NodeKeyResolver)>(v, v, v);
return v;
}
public void clearProperty(java.lang.String, oadd.org.apache.commons.configuration.tree.NodeKeyResolver)
{
oadd.org.apache.commons.configuration.tree.InMemoryNodeModel v;
java.lang.String v;
oadd.org.apache.commons.configuration.tree.NodeKeyResolver v;
oadd.org.apache.commons.configuration.tree.TrackedNodeModel v;
oadd.org.apache.commons.configuration.tree.NodeSelector v;
v := @this: oadd.org.apache.commons.configuration.tree.TrackedNodeModel;
v := @parameter: java.lang.String;
v := @parameter: oadd.org.apache.commons.configuration.tree.NodeKeyResolver;
v = virtualinvoke v.<oadd.org.apache.commons.configuration.tree.TrackedNodeModel: oadd.org.apache.commons.configuration.tree.InMemoryNodeModel getParentModel()>();
v = virtualinvoke v.<oadd.org.apache.commons.configuration.tree.TrackedNodeModel: oadd.org.apache.commons.configuration.tree.NodeSelector getSelector()>();
virtualinvoke v.<oadd.org.apache.commons.configuration.tree.InMemoryNodeModel: void clearProperty(java.lang.String,oadd.org.apache.commons.configuration.tree.NodeSelector,oadd.org.apache.commons.configuration.tree.NodeKeyResolver)>(v, v, v);
return;
}
public void clear(oadd.org.apache.commons.configuration.tree.NodeKeyResolver)
{
oadd.org.apache.commons.configuration.tree.InMemoryNodeModel v;
oadd.org.apache.commons.configuration.tree.NodeKeyResolver v;
oadd.org.apache.commons.configuration.tree.TrackedNodeModel v;
oadd.org.apache.commons.configuration.tree.NodeSelector v;
v := @this: oadd.org.apache.commons.configuration.tree.TrackedNodeModel;
v := @parameter: oadd.org.apache.commons.configuration.tree.NodeKeyResolver;
v = virtualinvoke v.<oadd.org.apache.commons.configuration.tree.TrackedNodeModel: oadd.org.apache.commons.configuration.tree.InMemoryNodeModel getParentModel()>();
v = virtualinvoke v.<oadd.org.apache.commons.configuration.tree.TrackedNodeModel: oadd.org.apache.commons.configuration.tree.NodeSelector getSelector()>();
virtualinvoke v.<oadd.org.apache.commons.configuration.tree.InMemoryNodeModel: java.util.List clearTree(java.lang.String,oadd.org.apache.commons.configuration.tree.NodeSelector,oadd.org.apache.commons.configuration.tree.NodeKeyResolver)>(null, v, v);
return;
}
public oadd.org.apache.commons.configuration.tree.ImmutableNode getInMemoryRepresentation()
{
java.lang.Object v;
oadd.org.apache.commons.configuration.tree.NodeHandler v;
oadd.org.apache.commons.configuration.tree.TrackedNodeModel v;
v := @this: oadd.org.apache.commons.configuration.tree.TrackedNodeModel;
v = virtualinvoke v.<oadd.org.apache.commons.configuration.tree.TrackedNodeModel: oadd.org.apache.commons.configuration.tree.NodeHandler getNodeHandler()>();
v = interfaceinvoke v.<oadd.org.apache.commons.configuration.tree.NodeHandler: java.lang.Object getRootNode()>();
return v;
}
public void close()
{
oadd.org.apache.commons.configuration.tree.InMemoryNodeModel v;
java.util.concurrent.atomic.AtomicBoolean v;
oadd.org.apache.commons.configuration.tree.TrackedNodeModel v;
boolean v;
oadd.org.apache.commons.configuration.tree.NodeSelector v;
v := @this: oadd.org.apache.commons.configuration.tree.TrackedNodeModel;
v = v.<oadd.org.apache.commons.configuration.tree.TrackedNodeModel: java.util.concurrent.atomic.AtomicBoolean closed>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicBoolean: boolean compareAndSet(boolean,boolean)>(0, 1);
if v == 0 goto label;
v = virtualinvoke v.<oadd.org.apache.commons.configuration.tree.TrackedNodeModel: oadd.org.apache.commons.configuration.tree.InMemoryNodeModel getParentModel()>();
v = virtualinvoke v.<oadd.org.apache.commons.configuration.tree.TrackedNodeModel: oadd.org.apache.commons.configuration.tree.NodeSelector getSelector()>();
virtualinvoke v.<oadd.org.apache.commons.configuration.tree.InMemoryNodeModel: void untrackNode(oadd.org.apache.commons.configuration.tree.NodeSelector)>(v);
label:
return;
}
protected void finalize() throws java.lang.Throwable
{
oadd.org.apache.commons.configuration.tree.TrackedNodeModel v;
boolean v;
v := @this: oadd.org.apache.commons.configuration.tree.TrackedNodeModel;
v = virtualinvoke v.<oadd.org.apache.commons.configuration.tree.TrackedNodeModel: boolean isReleaseTrackedNodeOnFinalize()>();
if v == 0 goto label;
virtualinvoke v.<oadd.org.apache.commons.configuration.tree.TrackedNodeModel: void close()>();
label:
specialinvoke v.<java.lang.Object: void finalize()>();
return;
}
}