ucar.nc2.CDMNode Maven / Gradle / Ivy
The newest version!
/*
* Copyright (c) 1998-2018 John Caron and University Corporation for Atmospheric Research/Unidata
* See LICENSE for license information.
*/
package ucar.nc2;
import ucar.nc2.dataset.StructureDS;
import ucar.nc2.dataset.VariableDS;
import ucar.nc2.util.Indent;
import java.util.HashMap;
import java.util.Map;
/**
* Define a superclass for all the CDM node classes: Group, Dimension, etc.
* Define the sort of the node {@link CDMSort} so that we can
* 1. do true switching on node type
* 2. avoid use of instanceof
* 3. Use container classes that have more than one kind of node
*
* Also move various common fields and methods to here.
*
* @author Heimbigner
*/
public abstract class CDMNode
{
protected CDMSort sort = null;
protected Group group = null;
protected Structure parentstruct = null;
protected boolean immutable = false;
protected String shortName = null;
protected Map