Package | Description |
---|---|
dap4.cdm | |
dap4.cdmshared | |
dap4.ce | |
dap4.core.data | |
dap4.core.dmr | |
dap4.core.dmr.parser | |
dap4.core.util | |
dap4.d4ts | |
dap4.dap4 | |
dap4.dap4shared | |
dap4.servlet |
Modifier and Type | Method and Description |
---|---|
protected Array |
CDMCompiler.compileAtomicVar(DataVariable d4var)
Compile an Atomic Valued variable.
|
protected void |
CDMCompiler.compileDMR()
Convert a DMR to equivalent CDM meta-databuffer
and populate a NetcdfFile with it.
|
protected CDMArraySequence |
CDMCompiler.compileSequence(D4DataSequence d4var)
Compile a sequence.
|
protected Array |
CDMCompiler.compileSequenceArray(D4DataVariable d4var)
Compile an array of sequences.
|
protected CDMArray |
CDMCompiler.compileStructure(D4DataStructure d4var,
int recno,
CDMArrayStructure container)
Compile a single structure instance.
|
protected Array |
CDMCompiler.compileStructureArray(D4DataVariable d4var)
Compile an array of structures.
|
protected Array |
CDMCompiler.compileVar(DataVariable d4var) |
NodeMap |
DSPToCDM.create()
Do the conversion and return a NodeMap
representing the conversion.
|
protected void |
DSPToCDM.createDimension(DapDimension dapdim,
Group cdmgroup,
NodeMap nodemap) |
protected Dimension |
DSPToCDM.createDimensionRef(DapDimension dim,
Group cdmgroup,
NodeMap nodemap) |
protected EnumTypedef |
DSPToCDM.createEnum(DapEnum dapenum,
Group cdmparent,
NodeMap nodemap) |
protected void |
DSPToCDM.createGroup(DapGroup dapgroup,
Group cdmparent,
NetcdfFile ncfile,
NodeMap nodemap) |
protected void |
DSPToCDM.createVar(DapVariable dapvar,
NetcdfFile ncfile,
NodeMap nodemap,
Group cdmgroup,
Structure cdmparentstruct)
Create a variable or field
|
protected void |
DSPToCDM.fillGroup(Group cdmparent,
DapGroup dapparent,
NetcdfFile ncfile,
NodeMap nodemap) |
Constructor and Description |
---|
CDMCompiler(DapNetcdfFile ncfile,
D4DSP dsp)
Constructor
|
Modifier and Type | Method and Description |
---|---|
static List<Slice> |
CDMUtil.createSlices(List<Range> rangelist)
Convert a list of ucar.ma2.Range to a list of Slice
More or less the inverst of create CDMRanges
|
static List<Range> |
CDMUtil.dimsetToRanges(List<DapDimension> dimset)
Convert a Section + variable to a constraint
static public View
sectionToView(CDMDSP dsp, Variable v, Section section)
throws DapException
{
if(section == null || section.getRank() == 0)
return null;
// Get the corresponding DapNode
DapVariable dv = (DapVariable) dsp.getNode().get(v);
if(dv == null)
throw new DapException("Variable has no corresponding dap node: " + v.getFullName());
// Get the structure path wrt DapDataset for dv
// and use path plus the Section to construct a constraint
List
|
static boolean |
CDMUtil.isWhole(List<Range> rangelist,
List<DapDimension> dimset,
int start,
int stop)
Test a List
|
static boolean |
CDMUtil.isWhole(List<Range> rangelist,
List<Slice> slices)
Test a List
|
static boolean |
CDMUtil.isWhole(List<Range> rangelist,
Variable var)
Test a List
|
static List<Slice> |
CDMUtil.shapeToSlices(int[] shape) |
Modifier and Type | Method and Description |
---|---|
void |
CEConstraint.addVariable(DapVariable var,
List<Slice> slices) |
protected void |
Universal.build() |
protected static int |
CEConstraint.compare(Object lvalue,
Object rvalue) |
CEConstraint |
CECompiler.compile(DapDataset template,
CEAST root) |
protected void |
CECompiler.compileAST(CEAST ast) |
void |
CECompiler.compilefilter(DapSequence seq,
CEAST expr)
Convert field references in a filter
|
protected DapVariable |
CECompiler.compilesegment(CEAST ast) |
protected void |
CECompiler.compileselection(CEAST ast) |
protected void |
CEConstraint.computedimensions()
Compute dimension related information
using slicing and redef info.
|
protected void |
CECompiler.dimredef(CEAST node) |
protected Object |
CEConstraint.eval(DapSequence seq,
DataRecord record,
CEAST expr)
Evaluate a filter with respect to a Sequence record.
|
protected static Object |
CEConstraint.fieldValue(DapSequence seq,
DataRecord record,
String field) |
CEConstraint.FilterIterator |
CEConstraint.filterIterator(DapSequence dapseq,
DataSequence dataseq)
Selection X Iterator
Filter evaluation using an iterator.
|
CEConstraint |
CEConstraint.finish()
Finish creating this Constraint.
|
CEConstraint |
Universal.finish()
Finish creating this Constraint; for Universal,
this does nothing; the important stuff is in build().
|
boolean |
CEConstraint.match(DapSequence seq,
DataRecord rec)
Selection X match
Evaluate a filter with respect to a Sequence record.
|
protected boolean |
CEConstraint.matches(DapSequence seq,
DataRecord rec,
CEAST filter)
Evaluate a filter with respect to a Sequence record.
|
Odometer |
CEConstraint.projectionIterator(DapVariable var)
Projection X Iterator
This basically returns an odometer that
will iterate over the appropriate values.
|
CEConstraint.ReferenceIterator |
CEConstraint.referenceIterator()
Reference X Iterator
Iterate over the variables and return
those that are referenced.
|
Constructor and Description |
---|
ReferenceIterator(CEConstraint ce) |
Universal(DapDataset dmr) |
Modifier and Type | Class and Description |
---|---|
class |
DataException |
Modifier and Type | Method and Description |
---|---|
DapException |
ErrorResponse.buildException()
Convert an ErrorResponse to the equivalent DapException.
|
Modifier and Type | Method and Description |
---|---|
void |
DapNode.addAttribute(DapAttribute attr) |
void |
DapGroup.addDecl(DapNode newdecl)
Add single declaration
|
void |
DapGrid.addDimension(DapDimension node) |
void |
DapVariable.addDimension(DapDimension node) |
void |
DapEnum.addEnumConst(String name,
Long value) |
void |
DapGrid.addField(DapNode node) |
void |
DapStructure.addField(DapNode newfield) |
void |
DapVariable.addMap(DapMap map) |
void |
DapXML.addXMLAttribute(DapXML attr) |
DapDimension |
DapDataset.createAnonymous(long size) |
DapNode |
DapGroup.findByFQN(String fqn,
DapSort sort)
Parse an FQN and use it to trace to a specific
object in a dataset.
|
List<DapNode> |
DapGroup.findByFQN(String fqn,
EnumSet<DapSort> sortset) |
List<DapNode> |
DapDataset.lookup(String fqn,
EnumSet<DapSort> sortset)
Parse an FQN and use it to trace to a specific
object in a dataset.
|
void |
DapNode.removeAttribute(DapAttribute attr)
Used by AbstractDSP to suppress certain attributes.
|
DapAttribute |
DapNode.setAttribute(DapAttribute attr) |
void |
DapEnum.setBaseType(DapType basetype) |
void |
DapGroup.setDecls(List<? extends DapNode> decls) |
void |
DapStructure.setFields(List<? extends DapNode> fields) |
Modifier and Type | Class and Description |
---|---|
class |
ParseException |
Modifier and Type | Method and Description |
---|---|
DapException |
DapException.setCode(int code) |
Modifier and Type | Method and Description |
---|---|
protected void |
SliceConstraint.add(List<Slice> slices) |
static Slice |
Slice.compose(Slice target,
Slice src)
Take two slices and compose src wrt target
Assume neither argument is null.
|
static List<Slice> |
DapUtil.dimsetSlices(List<DapDimension> dimset)
Given a view, get the universal
View either from a DapDataset.
|
static Odometer |
Odometer.factory(List<Slice> slices,
List<DapDimension> dimset,
boolean usecontiguous) |
Slice |
Slice.finish()
Perform sanity checks on a slice and repair where possible.
|
Slice |
MultiSlice.finish() |
static double |
Convert.forceRange(AtomicType basetype,
double value)
Force a double value into either float or double range
|
Slice |
Slice.setIndices(long first,
long last,
long stride) |
Slice |
Slice.setIndices(long first,
long last,
long stride,
long maxsize) |
void |
Slice.setMaxSize(long size) |
void |
MultiSlice.setMaxSize(long size) |
String |
Slice.toConstraintString()
Convert this slice to a string
suitable for use in a constraint
|
Constructor and Description |
---|
MultiOdometer(List<Slice> set,
List<DapDimension> dimset,
boolean usecontiguous) |
MultiSlice(List<Slice> slices) |
Odometer(List<DapDimension> dimset,
boolean usecontiguous) |
Odometer(List<Slice> set,
List<DapDimension> dimset,
boolean usecontiguous) |
Slice(DapDimension dim) |
Slice(long first,
long last,
long stride) |
Slice(long first,
long last,
long stride,
long maxsize) |
Slice(Slice s) |
SliceConstraint(int rank) |
SliceConstraint(List<List<Slice>> ss) |
Constructor and Description |
---|
FrontPage(String root,
DapRequest req) |
Modifier and Type | Method and Description |
---|---|
protected String |
Dap4Print.indicesToString(long[] indices) |
void |
Dap4Print.print() |
Modifier and Type | Class and Description |
---|---|
class |
ErrorException |
Modifier and Type | Method and Description |
---|---|
protected void |
HttpDSP.build()
Open a connection and make a request for the (possibly constrained) DMR.
|
protected void |
D4DSP.build(DapDataset dmr,
byte[] serialdata,
ByteOrder order) |
protected void |
D4DSP.build(String document,
byte[] serialdata,
ByteOrder order) |
protected InputStream |
HttpDSP.callServer(String methodurl) |
void |
DataCompiler.compile()
The goal here is to process the serialized
databuffer and locate variable-specific positions
in the serialized databuffer.
|
protected D4DataAtomic |
DataCompiler.compileAtomicVar(DapVariable dapvar) |
protected D4DataVariable |
DataCompiler.compileVar(DapVariable dapvar) |
protected byte[] |
DataCompiler.getChecksum(ByteBuffer data) |
DapDataset |
DSP.getDMR() |
String |
DapProtocol.ContentType.getFormat(ResponseFormat format) |
DSP |
DSP.open(String path) |
DSP |
AbstractDSP.open(String path) |
DSP |
DSP.open(String path,
DapContext context) |
abstract DSP |
AbstractDSP.open(String path,
DapContext context) |
DSP |
HttpDSP.open(String url,
DapContext context) |
DSP |
FileDSP.open(String path,
DapContext context) |
protected DapDataset |
AbstractDSP.parseDMR(String document)
It is common to want to parse a DMR text to a DapDataset,
so provide this utility.
|
protected void |
AbstractDSP.processAttributes(DapDataset dataset)
Walk the dataset tree and remove selected attributes
such as _Unsigned
|
String |
ChunkInputStream.readDMR()
Read the DMR, trimmed.
|
protected void |
AbstractDSP.setDataset(DapDataset dataset) |
void |
AbstractDSP.setPath(String path) |
protected void |
HttpDSP.setURL(String url) |
Constructor and Description |
---|
DataCompiler(D4DSP dsp,
ChecksumMode checksummode,
ByteBuffer databuffer)
Constructor
|
Modifier and Type | Method and Description |
---|---|
void |
URLMapDefault.addEntry(String urlpath,
String fileprefix) |
void |
URLMap.addEntry(String urlprefix,
String fileprefix)
Add an entry into the map.
|
void |
Generator.atomicVariable(DapAtomicVariable dapvar) |
void |
Generator.begin(CEConstraint ce,
ChunkWriter cw,
boolean withdmr) |
void |
CDMDSP.build()
Extract the metadata from the NetcdfDataset
and build the DMR.
|
protected DapAtomicVariable |
CDMDSP.buildatomicvar(Variable cdmvar) |
protected DapAttribute |
CDMDSP.buildattribute(Attribute attr) |
protected void |
CDMDSP.buildattributes(DapNode node,
List<Attribute> attributes) |
protected DapDimension |
CDMDSP.builddim(Dimension cdmdim) |
protected void |
CDMDSP.builddimrefs(DapVariable dapvar,
List<Dimension> cdmdims)
Assign dimensions to a variable
|
protected DapEnum |
CDMDSP.buildenum(EnumTypedef cdmenum) |
protected DapAtomicVariable |
CDMDSP.buildenumvar(Variable cdmvar) |
protected DapGroup |
CDMDSP.buildgroup(Group cdmgroup) |
protected void |
CDMDSP.buildmaps(DapVariable dapvar,
Variable var) |
protected DapAtomicVariable |
CDMDSP.buildopaquevar(Variable cdmvar) |
protected DapSequence |
CDMDSP.buildsequence(Variable cdmbasevar) |
protected DapAtomicVariable |
CDMDSP.buildstringvar(Variable cdmvar) |
protected DapStructure |
CDMDSP.buildstructvar(Variable cdmvar) |
protected DapNode |
CDMDSP.buildvariable(Variable cdmvar,
DapNode parent) |
protected DapNode |
CDMDSP.buildvariable(Variable cdmbasevar,
List<Dimension> cdmdims,
DapNode parent) |
static void |
ChunkWriter.chunkheader(int length,
int flags,
ByteBuffer hdrbuf) |
DSP |
DSPFactory.create(String path) |
protected NetcdfFile |
CDMDSP.createNetcdfFile(String location,
CancelTask canceltask) |
void |
Generator.dataset(DapDataset dmr) |
void |
Generator.end() |
protected void |
CDMDSP.fillgroup(DapGroup dapgroup,
Group cdmgroup) |
protected EnumTypedef |
CDMDSP.findMatchingEnum(EnumTypedef varenum)
Unfortunately, the CDM Iosp does not
actually use the declared enums.
|
void |
Generator.generate(CEConstraint ce,
ChunkWriter cw) |
void |
Generator.generate(CEConstraint ce,
ChunkWriter cw,
boolean withdmr) |
void |
Generator.generateDMR(DapDataset dmr) |
protected void |
CDMDSP.init(NetcdfFile ncfile) |
static void |
CDMDSP.loadNc4Iosp()
Make sure that NC4Iosp is registered and library loaded
|
URLMap.Result |
URLMapDefault.mapPath(String path) |
URLMap.Result |
URLMap.mapPath(String path)
Inverse of mapURL; returns a url path and suffix: U,S
such that mapURL(U)+S = path
Return a Pair specifying:
1.
|
URLMap.Result |
URLMapDefault.mapURL(String urlpath) |
URLMap.Result |
URLMap.mapURL(String urlpath)
Use some maximal prefix of the url path
to locate the associated file path prefix.
|
int |
FixedValue.nextCount(int max) |
int |
RandomValue.nextCount(int max)
Return an integer in range 1..max inclusive.
|
abstract int |
Value.nextCount(int max) |
Object |
RandomValue.nextFloat(DapType basetype) |
Object |
RandomValue.nextInteger(DapType basetype) |
Object |
FixedValue.nextValue(DapType basetype) |
Object |
RandomValue.nextValue(DapType basetype) |
abstract Object |
Value.nextValue(DapType basetype) |
DSP |
CDMDSP.open(String path) |
DSP |
CDMDSP.open(String path,
DapContext context) |
DSP |
SynDSP.open(String path,
DapContext context) |
protected void |
CDMDSP.processmappedvariables(Group g) |
void |
DSPFactory.registerDSP(String className)
Register a DSP, using its class string name.
|
void |
Generator.sequence(DapSequence seq) |
void |
Generator.structure(DapStructure struct) |
void |
Generator.variable(DapVariable dapvar) |
Constructor and Description |
---|
CDMDSP(NetcdfFile ncd,
DapContext cxt) |
CDMDSP(String path,
DapContext cxt) |
DapRequest(DapController controller,
javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response) |
Generator(DapDataset dmr,
Value.ValueSource src) |
ServletInfo(javax.servlet.http.HttpServlet sv) |
Copyright © 1999–2016 UCAR/Unidata. All rights reserved.