bes
Updated for version 3.20.6
RemoveElement.h
1
// This file is part of the "NcML Module" project, a BES module designed
3
// to allow NcML files to be used to be used as a wrapper to add
4
// AIS to existing datasets of any format.
5
//
6
// Copyright (c) 2009 OPeNDAP, Inc.
7
// Author: Michael Johnson <m.johnson@opendap.org>
8
//
9
// For more information, please also see the main website: http://opendap.org/
10
//
11
// This library is free software; you can redistribute it and/or
12
// modify it under the terms of the GNU Lesser General Public
13
// License as published by the Free Software Foundation; either
14
// version 2.1 of the License, or (at your option) any later version.
15
//
16
// This library is distributed in the hope that it will be useful,
17
// but WITHOUT ANY WARRANTY; without even the implied warranty of
18
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
19
// Lesser General Public License for more details.
20
//
21
// You should have received a copy of the GNU Lesser General Public
22
// License along with this library; if not, write to the Free Software
23
// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
24
//
25
// Please see the files COPYING and COPYRIGHT for more information on the GLPL.
26
//
27
// You can contact OPeNDAP, Inc. at PO Box 112, Saunderstown, RI. 02874-0112.
29
#ifndef __NCML_MODULE__REMOVE_ELEMENT_H__
30
#define __NCML_MODULE__REMOVE_ELEMENT_H__
31
32
#include "NCMLElement.h"
33
#include <Array.h>
34
35
namespace
ncml_module
{
36
// FDecls
37
class
NCMLParser;
38
40
class
RemoveElement
:
public
NCMLElement
{
41
private
:
42
RemoveElement
& operator=(
const
RemoveElement
&);
// disallow
43
44
public
:
45
RemoveElement
();
46
RemoveElement
(
const
RemoveElement
& proto);
47
virtual
~
RemoveElement
();
48
49
virtual
const
std::string&
getTypeName
()
const
;
50
virtual
RemoveElement
*
clone
()
const
;
// override clone with more specific subclass
51
virtual
void
setAttributes
(
const
XMLAttributeMap
& attrs);
52
virtual
void
handleBegin
();
53
virtual
void
handleContent
(
const
std::string& content);
54
virtual
void
handleEnd
();
55
virtual
std::string
toString
()
const
;
56
57
// Type of the element
58
static
const
std::string _sTypeName;
59
static
const
vector<string> _sValidAttributes;
60
61
private
:
62
73
void
processRemove(
NCMLParser
& p);
74
78
void
processRemoveAttribute(
NCMLParser
& p);
79
83
void
processRemoveVariable(
NCMLParser
& p);
84
88
void
processRemoveDimension(
NCMLParser
& p);
89
90
static
vector<string> getValidAttributes();
91
92
// removes dimension with name from arr
93
void
removeDimension(libdap::Array* arr,
string
name);
94
95
private
:
96
// data rep
97
std::string _name;
98
std::string _type;
99
};
100
101
}
102
103
#endif
/* __NCML_MODULE__REMOVE_ELEMENT_H__ */
ncml_module::RemoveElement::clone
virtual RemoveElement * clone() const
Definition:
RemoveElement.cc:66
ncml_module::RemoveElement::setAttributes
virtual void setAttributes(const XMLAttributeMap &attrs)
Definition:
RemoveElement.cc:73
ncml_module::RemoveElement::handleBegin
virtual void handleBegin()
Definition:
RemoveElement.cc:83
ncml_module::NCMLParser
Definition:
NCMLParser.h:158
ncml_module::RemoveElement
Definition:
RemoveElement.h:40
ncml_module::RemoveElement::handleContent
virtual void handleContent(const std::string &content)
Definition:
RemoveElement.cc:89
ncml_module::XMLAttributeMap
Definition:
XMLHelpers.h:93
ncml_module::RemoveElement::getTypeName
virtual const std::string & getTypeName() const
Definition:
RemoveElement.cc:60
ncml_module::NCMLElement
Base class for NcML element concrete classes.
Definition:
NCMLElement.h:61
ncml_module
NcML Parser for adding/modifying/removing metadata (attributes) to existing local datasets using NcML...
Definition:
AggregationElement.cc:72
ncml_module::RemoveElement::toString
virtual std::string toString() const
Definition:
RemoveElement.cc:102
ncml_module::RemoveElement::handleEnd
virtual void handleEnd()
Definition:
RemoveElement.cc:98
modules
ncml_module
RemoveElement.h
Generated by
1.8.17