|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectopendap.dap.BaseType
public abstract class BaseType
This abstract class defines the basic data type features for the OPeNDAP data
access protocol (DAP) data types. All of the DAP type classes
(DFloat64
, DArray
, etc.) subclass it or one of
its two abstract descendents, DVector
or
DConstructor
.
serialize
method is called to send data to the client. On the client side, most OPeNDAP
application programs will unpack the data promptly into whatever local
data structure the programmer deems the most useful.
Descendents of this class should implement the ClientIO
interface. That interface defines a deserialize
method used
by a OPeNDAP client to retrieve the variable's declaration and value(s) from
a OPeNDAP server.
DDS
,
ClientIO
,
Serialized FormConstructor Summary | |
---|---|
BaseType()
Constructs a new BaseType with no name. |
|
BaseType(java.lang.String n)
Constructs a new BaseType with name n . |
|
BaseType(java.lang.String n,
boolean decodeName)
Constructs a new BaseType with name n . |
Method Summary | |
---|---|
void |
addAttributeAlias(java.lang.String alias,
java.lang.String attributeName)
|
void |
addAttributeContainer(AttributeTable at)
|
void |
appendAttribute(java.lang.String name,
int type,
java.lang.String value)
|
void |
appendAttribute(java.lang.String name,
int type,
java.lang.String value,
boolean check)
|
AttributeTable |
appendAttributeContainer(java.lang.String name)
|
void |
checkSemantics()
Check semantics. |
void |
checkSemantics(boolean all)
Checks for internal consistency. |
java.lang.Object |
clone()
Returns a clone of this BaseType . |
void |
delAttribute(java.lang.String name)
|
void |
delAttribute(java.lang.String name,
int i)
|
int |
elementCount()
Returns the number of variables contained in this object. |
int |
elementCount(boolean leaves)
Returns the number of variables contained in this object. |
Attribute |
getAttribute()
|
Attribute |
getAttribute(java.lang.String name)
|
java.util.Enumeration |
getAttributeNames()
|
AttributeTable |
getAttributeTable()
|
java.lang.String |
getClearName()
Returns the unencoded name of the class instance. |
java.lang.String |
getLongName()
|
java.lang.String |
getName()
Returns the WWW encoded name of the class instance. |
BaseType |
getParent()
|
abstract java.lang.String |
getTypeName()
Returns the OPeNDAP type name of the class instance as a String . |
boolean |
hasAttributes()
|
PrimitiveVector |
newPrimitiveVector()
Constructs a new PrimitiveVector object optimized for the
particular data type of this BaseType . |
void |
printAttributes(java.io.OutputStream os)
|
void |
printAttributes(java.io.OutputStream os,
java.lang.String pad)
|
void |
printAttributes(java.io.PrintWriter pw)
|
void |
printAttributes(java.io.PrintWriter pw,
java.lang.String pad)
|
void |
printDecl(java.io.OutputStream os)
Print the variable's declaration. |
void |
printDecl(java.io.OutputStream os,
java.lang.String space)
Print the variable's declaration. |
void |
printDecl(java.io.OutputStream os,
java.lang.String space,
boolean print_semi)
Print the variable's declaration using OutputStream . |
void |
printDecl(java.io.OutputStream os,
java.lang.String space,
boolean print_semi,
boolean constrained)
Print the variable's declaration using OutputStream . |
void |
printDecl(java.io.PrintWriter os)
Print the variable's declaration. |
void |
printDecl(java.io.PrintWriter os,
java.lang.String space)
Print the variable's declaration. |
void |
printDecl(java.io.PrintWriter os,
java.lang.String space,
boolean print_semi)
Write the variable's declaration in a C-style syntax. |
void |
printDecl(java.io.PrintWriter os,
java.lang.String space,
boolean print_semi,
boolean constrained)
Write the variable's declaration in a C-style syntax. |
void |
printVal(java.io.OutputStream os,
java.lang.String space)
Print the variable's value using OutputStream . |
void |
printVal(java.io.OutputStream os,
java.lang.String space,
boolean print_decl_p)
Print the variable's value using OutputStream . |
void |
printVal(java.io.PrintWriter os,
java.lang.String space)
Print the variable's value. |
abstract void |
printVal(java.io.PrintWriter os,
java.lang.String space,
boolean print_decl_p)
Prints the value of the variable, with its declaration. |
void |
printXML(java.io.OutputStream os)
|
void |
printXML(java.io.OutputStream os,
java.lang.String pad)
|
void |
printXML(java.io.PrintWriter pw)
|
void |
printXML(java.io.PrintWriter pw,
java.lang.String pad)
|
void |
printXML(java.io.PrintWriter pw,
java.lang.String pad,
boolean constrained)
|
void |
setClearName(java.lang.String n)
Sets the unencoded name of the class instance. |
void |
setName(java.lang.String n)
Sets the name of the class instance. |
void |
setParent(BaseType bt)
|
Methods inherited from class java.lang.Object |
---|
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public BaseType()
BaseType
with no name.
public BaseType(java.lang.String n)
BaseType
with name n
.
n
- the name of the variable.public BaseType(java.lang.String n, boolean decodeName)
BaseType
with name n
.
n
- the name of the variable.Method Detail |
---|
public java.lang.Object clone()
BaseType
. A deep copy is performed
on all data inside the variable.
clone
in class java.lang.Object
BaseType
.public final java.lang.String getClearName()
public final java.lang.String getName()
public final void setName(java.lang.String n)
n
- the name of the class instance.public final void setClearName(java.lang.String n)
n
- the unencoded name of the class instance.public abstract java.lang.String getTypeName()
String
.
String
.public int elementCount(boolean leaves)
leaves
to true
.
leaves
- If true, count all the simple types in the `tree' of
variables rooted at this variable.
public final int elementCount()
public void printDecl(java.io.PrintWriter os, java.lang.String space, boolean print_semi, boolean constrained)
os
- The PrintWriter
on which to print the
declaration.space
- Each line of the declaration will begin with the
characters in this string. Usually used for leading spaces.print_semi
- a boolean value indicating whether to print a
semicolon at the end of the declaration.constrained
- a boolean value indicating whether to print
the declartion dependent on the projection information. This
is only used by Server side code.DDS
public void printDecl(java.io.PrintWriter os, java.lang.String space, boolean print_semi)
os
- The PrintWriter
on which to print the
declaration.space
- Each line of the declaration will begin with the
characters in this string. Usually used for leading spaces.print_semi
- a boolean value indicating whether to print a
semicolon at the end of the declaration.DDS
public final void printDecl(java.io.PrintWriter os, java.lang.String space)
printDecl(os, space, true)
.
os
- The PrintWriter
on which to print the
declaration.space
- Each line of the declaration will begin with the
characters in this string. Usually used for leading spaces.DDS.print(PrintWriter)
public final void printDecl(java.io.PrintWriter os)
printDecl(os, " ", true)
.
os
- The PrintWriter
on which to print the
declaration.DDS.print(PrintWriter)
public final void printDecl(java.io.OutputStream os, java.lang.String space, boolean print_semi, boolean constrained)
OutputStream
.
os
- The OutputStream
on which to print the
declaration.space
- Each line of the declaration will begin with the
characters in this string. Usually used for leading spaces.print_semi
- a boolean value indicating whether to print a
semicolon at the end of the declaration.DDS.print(PrintWriter)
public final void printDecl(java.io.OutputStream os, java.lang.String space, boolean print_semi)
OutputStream
.
os
- The OutputStream
on which to print the
declaration.space
- Each line of the declaration will begin with the
characters in this string. Usually used for leading spaces.print_semi
- a boolean value indicating whether to print a
semicolon at the end of the declaration.DDS.print(PrintWriter)
public final void printDecl(java.io.OutputStream os, java.lang.String space)
printDecl(os, space, true)
.
os
- The OutputStream
on which to print the
declaration.space
- Each line of the declaration will begin with the
characters in this string. Usually used for leading spaces.DDS.print(PrintWriter)
public final void printDecl(java.io.OutputStream os)
printDecl(os, " ", true)
.
os
- The OutputStream
on which to print the
declaration.DDS.print(PrintWriter)
public abstract void printVal(java.io.PrintWriter os, java.lang.String space, boolean print_decl_p)
os
- the PrintWriter
on which to print the value.space
- this value is passed to the printDecl
method,
and controls the leading spaces of the output.print_decl_p
- a boolean value controlling whether the
variable declaration is printed as well as the value.public final void printVal(java.io.PrintWriter os, java.lang.String space)
printVal(os, space, true)
.
os
- the PrintWriter
on which to print the value.space
- this value is passed to the printDecl
method,
and controls the leading spaces of the output.DataDDS.printVal(PrintWriter)
public final void printVal(java.io.OutputStream os, java.lang.String space, boolean print_decl_p)
OutputStream
.
os
- the OutputStream
on which to print the value.space
- this value is passed to the printDecl
method,
and controls the leading spaces of the output.print_decl_p
- a boolean value controlling whether the
variable declaration is printed as well as the value.DataDDS.printVal(PrintWriter)
public final void printVal(java.io.OutputStream os, java.lang.String space)
OutputStream
.
os
- the OutputStream
on which to print the value.space
- this value is passed to the printDecl
method,
and controls the leading spaces of the output.DataDDS.printVal(PrintWriter)
public void checkSemantics(boolean all) throws BadSemanticsException
DInt32
instance would return false if it had
no name defined. A DGrid
instance might return false for
more complex reasons, such as having Map arrays of the wrong
size or shape.
This method is used by the DDS
class, and will rarely, if
ever, be explicitly called by a OPeNDAP application program. A
variable must pass this test before it is sent, but there may be
many other stages in a retrieve operation where it would fail.
all
- For complex constructor types (
DGrid
, DSequence
, DStructure
),
this flag indicates whether to check the
semantics of the member variables, too.
BadSemanticsException
- if semantics are bad, explains why.DDS.checkSemantics(boolean)
public final void checkSemantics() throws BadSemanticsException
checkSemantics(false)
.
BadSemanticsException
- if semantics are bad, explains why.checkSemantics(boolean)
public PrimitiveVector newPrimitiveVector()
PrimitiveVector
object optimized for the
particular data type of this BaseType
. For example, a
DByte
class would create a new
BytePrimitiveVector
in this call. This allows for a very
optimized, yet type-safe, implementation of DVector
functionality. For non-primitive types, such as
DArray
, DGrid
, DSequence
, and
DStructure
, the default implementation returns a
BaseTypePrimitiveVector
object which can
deserialize an array of complex types.
PrimitiveVector
object for the variable type.public void setParent(BaseType bt)
public BaseType getParent()
public java.lang.String getLongName()
public boolean hasAttributes()
public Attribute getAttribute()
public AttributeTable getAttributeTable()
public void addAttributeAlias(java.lang.String alias, java.lang.String attributeName) throws DASException
DASException
public void appendAttribute(java.lang.String name, int type, java.lang.String value, boolean check) throws DASException
DASException
public void appendAttribute(java.lang.String name, int type, java.lang.String value) throws DASException
DASException
public void addAttributeContainer(AttributeTable at) throws AttributeExistsException
AttributeExistsException
public AttributeTable appendAttributeContainer(java.lang.String name)
public void delAttribute(java.lang.String name)
public void delAttribute(java.lang.String name, int i) throws DASException
DASException
public Attribute getAttribute(java.lang.String name)
public java.util.Enumeration getAttributeNames()
public void printAttributes(java.io.OutputStream os)
public void printAttributes(java.io.OutputStream os, java.lang.String pad)
public void printAttributes(java.io.PrintWriter pw)
public void printAttributes(java.io.PrintWriter pw, java.lang.String pad)
public void printXML(java.io.OutputStream os)
os
- This class/method is associated with pre-release version of the DDX API. It is experimental and is subject to (significant) change.
public void printXML(java.io.OutputStream os, java.lang.String pad)
os
- pad
- This class/method is associated with pre-release version of the DDX API. It is experimental and is subject to (significant) change.
public void printXML(java.io.PrintWriter pw)
pw
- This class/method is associated with pre-release version of the DDX API. It is experimental and is subject to (significant) change.
public void printXML(java.io.PrintWriter pw, java.lang.String pad)
pw
- pad
- This class/method is associated with pre-release version of the DDX API. It is experimental and is subject to (significant) change.
public void printXML(java.io.PrintWriter pw, java.lang.String pad, boolean constrained)
pw
- pad
- constrained
- This class/method is associated with pre-release version of the DDX API. It is experimental and is subject to (significant) change.
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |