public class Group extends CDMNode
Immutable if setImmutable() was called.
| Modifier and Type | Field and Description |
|---|---|
protected List<Attribute> |
attributes |
protected List<Dimension> |
dimensions |
protected List<EnumTypedef> |
enumTypedefs |
protected List<Group> |
groups |
protected NetcdfFile |
ncfile |
protected Group |
parent |
protected String |
shortName |
protected List<Variable> |
variables |
| Constructor and Description |
|---|
Group(NetcdfFile ncfile,
Group parent,
String shortName)
Constructor
|
| Modifier and Type | Method and Description |
|---|---|
void |
addAttribute(Attribute att)
Add new Attribute; replace old if has same name.
|
void |
addDimension(Dimension d)
Add a shared Dimension
|
boolean |
addDimensionIfNotExists(Dimension d) |
void |
addEnumeration(EnumTypedef e)
Add an Enumeration
|
void |
addGroup(Group g)
Add a nested Group
|
void |
addVariable(Variable v)
Add a Variable
|
Group |
commonParent(Group other)
Get the common parent of this and the other group.
|
boolean |
equals(Object oo)
Instances which have same name and parent are equal.
|
Attribute |
findAttribute(String name)
Find an Attribute in this Group by its name.
|
Attribute |
findAttributeIgnoreCase(String name)
Find an Attribute in this Group by its name, ignore case.
|
Dimension |
findDimension(String name)
Retrieve a Dimension using its (short) name.
|
Dimension |
findDimensionLocal(String name)
Retrieve a Dimension using its (short) name, in this group only
|
EnumTypedef |
findEnumeration(String name)
Find an Enumeration Typedef using its (short) name.
|
Group |
findGroup(String groupShortName)
Retrieve the Group with the specified (short) name.
|
Variable |
findVariable(String varShortName)
Find the Variable with the specified (short) name in this group.
|
Variable |
findVariableOrInParent(String varShortName)
Find the Variable with the specified (short) name in this group or a parent group.
|
List<Attribute> |
getAttributes()
Get the set of attributes contained directly in this Group.
|
List<Dimension> |
getDimensions()
Get the Dimensions contained directly in this group.
|
List<EnumTypedef> |
getEnumTypedefs()
Get the enumerations contained directly in this group.
|
List<Group> |
getGroups()
Get the Groups contained directly in this Group.
|
String |
getName()
Get the full name, starting from the root Group.
|
String |
getNameAndAttributes()
Get String with name and attributes.
|
NetcdfFile |
getNetcdfFile()
Get the owning NetcdfFile
|
Group |
getParentGroup()
Get its parent Group, or null if its the root group.
|
String |
getShortName()
Get the "short" name, unique within its parent Group.
|
List<Variable> |
getVariables()
Get the Variables contained directly in this group.
|
int |
hashCode()
Override Object.hashCode() to implement equals.
|
boolean |
isParent(Group other)
Is this a parent of the other Group?
|
boolean |
isRoot()
Is this the root group?
|
Group |
makeRelativeGroup(NetcdfFile ncf,
String path,
boolean ignorelast)
Create groups to ensure path is defined
|
boolean |
remove(Attribute a)
Remove an Attribute : uses the attribute hashCode to find it.
|
boolean |
remove(Dimension d)
Remove an Dimension : uses the dimension hashCode to find it.
|
boolean |
remove(Group g)
Remove an Attribute : uses the Group hashCode to find it.
|
boolean |
remove(Variable v)
Remove a Variable : uses the variable hashCode to find it.
|
boolean |
removeDimension(String dimName)
remove a Dimension using its name, in this group only
|
boolean |
removeVariable(String shortName)
remove a Variable using its (short) name, in this group only
|
Group |
setImmutable()
Make this immutable.
|
String |
setName(String shortName)
Set the short name, converting to valid CDM object name if needed.
|
void |
setParentGroup(Group parent)
Set the Group's parent Group
|
String |
toString() |
protected void |
writeCDL(PrintWriter out,
String indent,
boolean strict) |
protected NetcdfFile ncfile
protected Group parent
protected String shortName
protected List<EnumTypedef> enumTypedefs
public Group(NetcdfFile ncfile, Group parent, String shortName)
ncfile - NetcdfFile owns this Groupparent - parent of Group. If null, this is the root Group.shortName - short name of Group.public String getName()
public boolean isRoot()
public String getShortName()
public Group getParentGroup()
public List<Variable> getVariables()
public Variable findVariable(String varShortName)
varShortName - short name of Variable within this group.public Variable findVariableOrInParent(String varShortName)
varShortName - short name of Variable.public List<Group> getGroups()
public NetcdfFile getNetcdfFile()
public Group findGroup(String groupShortName)
groupShortName - short name of the nested group you are looking for.public List<Dimension> getDimensions()
public List<EnumTypedef> getEnumTypedefs()
public Dimension findDimension(String name)
name - Dimension name.public Dimension findDimensionLocal(String name)
name - Dimension name.public List<Attribute> getAttributes()
public Attribute findAttribute(String name)
name - the name of the attribute.public Attribute findAttributeIgnoreCase(String name)
name - the name of the attributepublic EnumTypedef findEnumeration(String name)
name - Enumeration name.public Group commonParent(Group other)
other - the other grouppublic boolean isParent(Group other)
other - another Grouppublic String getNameAndAttributes()
protected void writeCDL(PrintWriter out, String indent, boolean strict)
public void setParentGroup(Group parent)
parent - parent group.public String setName(String shortName)
shortName - set to this valuepublic void addAttribute(Attribute att)
att - add this Attribute.public void addDimension(Dimension d)
d - add this Dimensionpublic boolean addDimensionIfNotExists(Dimension d)
public void addGroup(Group g)
g - add this Group.public void addEnumeration(EnumTypedef e)
e - add this Enumeration.public void addVariable(Variable v)
v - add this Variable.public boolean remove(Attribute a)
a - remove this Attribute.public boolean remove(Dimension d)
d - remove this Dimension.public boolean remove(Group g)
g - remove this Group.public boolean remove(Variable v)
v - remove this Variable.public boolean removeDimension(String dimName)
dimName - Dimension name.public boolean removeVariable(String shortName)
shortName - Variable name.public Group setImmutable()
public boolean equals(Object oo)
public int hashCode()
public Group makeRelativeGroup(NetcdfFile ncf, String path, boolean ignorelast)
ncf - the containing netcdf file objectpath - the path to the desired groupignorelast - true => ignore last element in the pathCopyright © 1999-2012 UCAR/Unidata. All Rights Reserved.