private Element writeVariable(VariableSimpleIF v) { NcMLWriter ncmlWriter = new NcMLWriter(); Element varElem = new Element("variable"); varElem.setAttribute("name", v.getShortName()); ucar.ma2.DataType dt = v.getDataType(); if (dt != null) varElem.setAttribute("type", dt.toString()); // attributes Iterator atts = v.getAttributes().iterator(); while (atts.hasNext()) { ucar.nc2.Attribute att = (ucar.nc2.Attribute) atts.next(); varElem.addContent(ncmlWriter.makeAttributeElement(att)); } return varElem; }
Element runDateAttr = ncmlWriter.makeAttributeElement(new Attribute(_Coordinate.ModelRunDate, runDate.toString())); config.innerNcml = element.addContent(runDateAttr);
private Element writeGrid(GridDatatype grid) { NcMLWriter ncmlWriter = new NcMLWriter(); Element varElem = new Element("grid"); varElem.setAttribute("name", grid.getFullName()); String desc = grid.getDescription() != null ? grid.getDescription() : "No description"; varElem.setAttribute("desc", desc); StringBuilder buff = new StringBuilder(); List dims = grid.getDimensions(); for (int i = 0; i < dims.size(); i++) { Dimension dim = (Dimension) dims.get(i); if (i > 0) buff.append(" "); if (dim.isShared()) buff.append(dim.getShortName()); else buff.append(dim.getLength()); } if (buff.length() > 0) varElem.setAttribute("shape", buff.toString()); DataType dt = grid.getDataType(); if (dt != null) varElem.setAttribute("type", dt.toString()); //GridCoordSystem cs = grid.getCoordinateSystem(); //varElem.setAttribute("coordSys", cs.getName()); // attributes for (ucar.nc2.Attribute att : grid.getAttributes()) { varElem.addContent(ncmlWriter.makeAttributeElement(att)); } return varElem; }
private Element writeCoordTransform(CoverageTransform ct) { Element ctElem = new Element("coordTransform"); ctElem.setAttribute("name", ct.getName()); ctElem.setAttribute("transformType", ct.isHoriz() ? "Projection" : "Vertical"); for (Attribute param : ct.getAttributes()) { Element pElem = ncmlWriter.makeAttributeElement(param); pElem.setName("parameter"); ctElem.addContent(pElem); } return ctElem; }
varElem.addContent(makeAttributeElement(att));
private Element writeVariable(VariableSimpleIF v) { NcMLWriter ncMLWriter = new NcMLWriter(); Element varElem = new Element("variable"); varElem.setAttribute("name", v.getShortName()); ucar.ma2.DataType dt = v.getDataType(); if (dt != null) varElem.setAttribute("type", dt.toString()); // attributes for (Attribute att : v.getAttributes()) { varElem.addContent(ncMLWriter.makeAttributeElement(att)); } return varElem; }
private Element writeAxis2(CoordinateAxis axis, String name) { if (axis == null) return null; NcMLWriter ncmlWriter = new NcMLWriter(); Element varElem = new Element(name); varElem.setAttribute("name", axis.getFullName()); varElem.setAttribute("shape", getShapeString(axis.getShape())); // axis.getDimensionsString()); DataType dt = axis.getDataType(); varElem.setAttribute("type", dt.toString()); AxisType axisType = axis.getAxisType(); if (null != axisType) varElem.setAttribute("axisType", axisType.toString()); // attributes for (Attribute att : axis.getAttributes()) varElem.addContent(ncmlWriter.makeAttributeElement(att)); try { Element values = ncmlWriter.makeValuesElement(axis, false); values.setAttribute("npts", Long.toString(axis.getSize())); varElem.addContent(values); } catch (IOException e) { String message = String.format( "Couldn't read values for %s. Omitting <values> element.", axis.getFullName()); logger.warn(message, e); } return varElem; }
varElem.addContent(ncmlWriter.makeAttributeElement(att));
private Element writeAxis(CoordinateAxis axis) { NcMLWriter ncmlWriter = new NcMLWriter(); Element varElem = new Element("axis"); varElem.setAttribute("name", axis.getFullName()); varElem.setAttribute("shape", getShapeString(axis.getShape())); // axis.getDimensionsString()); DataType dt = axis.getDataType(); varElem.setAttribute("type", dt.toString()); AxisType axisType = axis.getAxisType(); if (null != axisType) varElem.setAttribute("axisType", axisType.toString()); // attributes for (Attribute att : axis.getAttributes()) { varElem.addContent(ncmlWriter.makeAttributeElement(att)); } if (axis.getRank() == 1) { try { Element values = ncmlWriter.makeValuesElement(axis, true); varElem.addContent(values); } catch (IOException e) { String message = String.format( "Couldn't read values for %s. Omitting <values> element.", axis.getFullName()); logger.warn(message, e); } } return varElem; }
private Element writeGrid(Coverage grid) { Element varElem = new Element("grid"); varElem.setAttribute("name", grid.getName()); String desc = grid.getDescription() != null ? grid.getDescription() : "No description"; varElem.setAttribute("desc", desc); /* StringBuilder buff = new StringBuilder(); List dims = grid.getDimensions(); for (int i = 0; i < dims.size(); i++) { Dimension dim = (Dimension) dims.get(i); if (i > 0) buff.append(" "); if (dim.isShared()) buff.append(dim.getShortName()); else buff.append(dim.getLength()); } if (buff.length() > 0) varElem.setAttribute("shape", buff.toString()); */ DataType dt = grid.getDataType(); if (dt != null) varElem.setAttribute("type", dt.toString()); //GridCoordSystem cs = grid.getCoordinateSystem(); //varElem.setAttribute("coordSys", cs.getName()); // attributes for (ucar.nc2.Attribute att : grid.getAttributes()) { varElem.addContent(ncmlWriter.makeAttributeElement(att)); } return varElem; }
public Element makeGroupElement(Group group) { Element elem = new Element("group", namespace); elem.setAttribute("name", group.getShortName()); // enumTypeDef for (EnumTypedef etd : group.getEnumTypedefs()) { elem.addContent(makeEnumTypedefElement(etd)); } // dimensions for (Dimension dim : group.getDimensions()) { elem.addContent(makeDimensionElement(dim)); } // regular variables for (Variable var : group.getVariables()) { boolean showValues = writeVariablesPredicate.apply(var); elem.addContent(makeVariableElement(var, showValues)); } // nested groups for (Group g : group.getGroups()) { Element groupElem = new Element("group", namespace); groupElem.setAttribute("name", g.getShortName()); elem.addContent(makeGroupElement(g)); } // attributes for (Attribute att : group.getAttributes()) { elem.addContent(makeAttributeElement(att)); } return elem; }