My Project
Public Member Functions | Protected Types | Protected Member Functions | Static Protected Member Functions | Protected Attributes | Friends | List of all members
common::AbstractObject Class Referenceabstract
Inheritance diagram for common::AbstractObject:
common::EpcExternalPartReference prodml2_0::AbstractObject resqml2::AbstractFeature resqml2::AbstractFeatureInterpretation resqml2::AbstractLocal3dCrs resqml2::AbstractProperty resqml2::AbstractRepresentation resqml2::Activity resqml2::ActivityTemplate resqml2::MdDatum resqml2::PropertyKind resqml2::TimeSeries resqml2_0_1::StratigraphicColumn resqml2_0_1::StringTableLookup resqml2_0_1::WellboreMarker

Public Member Functions

bool isPartial () const
 
std::string getUuid () const
 
std::string getTitle () const
 
std::string getEditor () const
 
time_t getCreation () const
 
std::string getOriginator () const
 
std::string getDescription () const
 
time_t getLastUpdate () const
 
std::string getFormat () const
 
std::string getDescriptiveKeywords () const
 
void setTitle (const std::string &title)
 
void setEditor (const std::string &editor)
 
void setCreation (const time_t &creation)
 
void setOriginator (const std::string &originator)
 
void setDescription (const std::string &description)
 
void setLastUpdate (const time_t &lastUpdate)
 
void setFormat (const std::string &format)
 
void setDescriptiveKeywords (const std::string &descriptiveKeywords)
 
void setMetadata (const std::string &title, const std::string &editor, const time_t &creation, const std::string &originator, const std::string &description, const time_t &lastUpdate, const std::string &format, const std::string &descriptiveKeywords)
 
void serializeIntoStream (std::ostream *stream)
 
gsoap_resqml2_0_1::eml20__AbstractCitedDataObject * getGsoapProxy () const
 
soap * getGsoapContext () const
 
int getGsoapType () const
 
gsoap_resqml2_0_1::eml20__DataObjectReference * newResqmlReference () const
 
gsoap_eml2_1::eml21__DataObjectReference * newEmlReference () const
 
gsoap_resqml2_0_1::resqml2__ContactElementReference * newResqmlContactElementReference () const
 
common::EpcDocumentgetEpcDocument () const
 
virtual std::string getXmlNamespace () const
 
virtual std::string getXmlTag () const =0
 
virtual std::string getResqmlVersion () const
 
virtual std::string getContentType () const
 
virtual std::string getPartNameInEpcDocument () const
 
std::string serializeIntoString ()
 
void addAlias (const std::string &authority, const std::string &title)
 
unsigned int getAliasCount () const
 
std::string getAliasAuthorityAtIndex (const unsigned int &index) const
 
std::string getAliasTitleAtIndex (const unsigned int &index) const
 
const std::vector< resqml2::Activity * > & getActivitySet () const
 
unsigned int getActivityCount () const
 
resqml2::ActivitygetActivity (const unsigned int &index) const
 
void pushBackExtraMetadata (const std::string &key, const std::string &value)
 
std::tr1::unordered_map< std::string, std::string > getExtraMetadataSet () const
 
std::vector< std::string > getExtraMetadata (const std::string &key) const
 
unsigned int getExtraMetadataCount () const
 
std::string getExtraMetadataKeyAtIndex (const unsigned int &index) const
 
std::string getExtraMetadataStringValueAtIndex (const unsigned int &index) const
 

Protected Types

enum  EmlVersion { TWO_DOT_ZERO = 0, TWO_DOT_ONE = 1 }
 

Protected Member Functions

 AbstractObject ()
 Indicate whether methods update the XML (gSoap) or only the C++ classes of the API.
 
 AbstractObject (gsoap_resqml2_0_1::eml20__DataObjectReference *partialObject)
 
 AbstractObject (gsoap_resqml2_0_1::eml20__AbstractCitedDataObject *proxy)
 
 AbstractObject (gsoap_eml2_1::eml21__AbstractObject *proxy)
 
void initMandatoryMetadata ()
 
virtual void importRelationshipSetFromEpc (common::EpcDocument *epcDoc)=0
 
virtual std::vector< epc::RelationshipgetAllEpcRelationships () const =0
 
void setMetadata (const std::string &guid, const std::string &title, const std::string &editor, const time_t &creation, const std::string &originator, const std::string &description, const time_t &lastUpdate, const std::string &format, const std::string &descriptiveKeywords)
 
void cannotBePartial () const
 
void changeToPartialObject ()
 

Static Protected Member Functions

static void addActivityToResqmlObject (resqml2::Activity *activity, AbstractObject *resqmlObject)
 

Protected Attributes

gsoap_resqml2_0_1::eml20__AbstractCitedDataObject * gsoapProxy2_0_1
 
gsoap_eml2_1::eml21__AbstractObject * gsoapProxy2_1
 
common::EpcDocumentepcDocument
 
std::vector< resqml2::Activity * > activitySet
 
bool updateXml
 

Friends

void common::EpcDocument::addGsoapProxy (AbstractObject *proxy)
 
void common::EpcDocument::updateAllRelationships ()
 
void common::EpcDocument::serialize (bool useZip64)
 

Constructor & Destructor Documentation

AbstractObject::AbstractObject ( gsoap_resqml2_0_1::eml20__DataObjectReference *  partialObject)
protected

Constructor for partial transfer

Only for partial transfer

Member Function Documentation

void AbstractObject::addAlias ( const std::string &  authority,
const std::string &  title 
)

Add an alias for this object

void AbstractObject::cannotBePartial ( ) const
protected

Throw an exception if the instance if partial.

void AbstractObject::changeToPartialObject ( )
protected

Transform a non partial object into a partial one

resqml2::Activity * AbstractObject::getActivity ( const unsigned int &  index) const

Get the associated activity at a particular index.

unsigned int AbstractObject::getActivityCount ( ) const

Get the count of associated activities.

const std::vector< resqml2::Activity * > & AbstractObject::getActivitySet ( ) const

Get all the activities where the instance is involved.

std::string AbstractObject::getAliasAuthorityAtIndex ( const unsigned int &  index) const

Get the alias authority at a particular index in the aliases set.

unsigned int AbstractObject::getAliasCount ( ) const

Get the count of aliases in the instance.

std::string AbstractObject::getAliasTitleAtIndex ( const unsigned int &  index) const

Get the alias title at a particular index in the aliases set.

virtual std::vector<epc::Relationship> common::AbstractObject::getAllEpcRelationships ( ) const
protectedpure virtual
string AbstractObject::getContentType ( ) const
virtual

Get the content type of the instance according to EPC recommendation

Reimplemented in prodml2_0::AbstractObject.

common::EpcDocument* common::AbstractObject::getEpcDocument ( ) const
inline

Return the EPC document which contains this gsoap wrapper.

vector< string > AbstractObject::getExtraMetadata ( const std::string &  key) const

Get an extra metadata according its key.

Returns
An empty vector if the extra metadata does not exist. Or the extra metadata value set if it exists.

Get an extra metadata according its key.

Returns
An empty string if the extra metadata does not exist. Or the extra metadata value if it exists
unsigned int AbstractObject::getExtraMetadataCount ( ) const

Get the count of extra metadata in the instance.

std::string AbstractObject::getExtraMetadataKeyAtIndex ( const unsigned int &  index) const

Get the key of a string value pair at a particular index in the extra metadata set

std::tr1::unordered_map< std::string, std::string > AbstractObject::getExtraMetadataSet ( ) const

Getter (in read only mode) of all the extra metadata

std::string AbstractObject::getExtraMetadataStringValueAtIndex ( const unsigned int &  index) const

Get the string value of a string value pair at a particular index in the extra metadata set

soap * AbstractObject::getGsoapContext ( ) const

Get the gsoap context where the underlying gsoap proxy is defined.

gsoap_resqml2_0_1::eml20__AbstractCitedDataObject* common::AbstractObject::getGsoapProxy ( ) const
inline

Get the gsoap proxy which is wrapped by this entity

int AbstractObject::getGsoapType ( ) const

Get the Gsoap type of the wrapped element

std::string AbstractObject::getPartNameInEpcDocument ( ) const
virtual

Get part name of this XML top level instance in the EPC document

Reimplemented in prodml2_0::AbstractObject.

std::string AbstractObject::getResqmlVersion ( ) const
virtual
std::string AbstractObject::getXmlNamespace ( ) const
virtual

Get the XML namespace for the tags for the XML serialization of this instance

Reimplemented in prodml2_0::HdfProxy, resqml2_0_1::HdfProxy, and prodml2_0::AbstractObject.

virtual std::string common::AbstractObject::getXmlTag ( ) const
pure virtual

Get the XML tag for the XML serialization of this instance

Implemented in resqml2_0_1::UnstructuredGridRepresentation, resqml2_0_1::AbstractIjkGridRepresentation, resqml2_0_1::LocalTime3dCrs, resqml2_0_1::WellboreFrameRepresentation, resqml2_0_1::LocalDepth3dCrs, resqml2_0_1::StratigraphicColumnRankInterpretation, resqml2_0_1::SealedSurfaceFrameworkRepresentation, resqml2_0_1::PolylineRepresentation, resqml2_0_1::ContinuousProperty, resqml2::Activity, resqml2_0_1::TriangulatedSetRepresentation, resqml2::PropertyKind, resqml2_0_1::ActivityTemplate, resqml2_0_1::WellboreMarkerFrameRepresentation, resqml2_0_1::WellboreMarker, resqml2_0_1::PolylineSetRepresentation, resqml2_0_1::SeismicLatticeFeature, prodml2_0::DasAcquisition, resqml2_0_1::CategoricalPropertySeries, resqml2_0_1::ContinuousPropertySeries, resqml2::ActivityTemplate, resqml2_0_1::SeismicLineFeature, resqml2_0_1::DiscretePropertySeries, resqml2_0_1::CategoricalProperty, resqml2_0_1::DiscreteProperty, resqml2_0_1::GeneticBoundaryFeature, resqml2::MdDatum, resqml2_0_1::NonSealedSurfaceFrameworkRepresentation, resqml2_0_1::CommentProperty, resqml2_0_1::StratigraphicOccurrenceInterpretation, resqml2_0_1::GeobodyInterpretation, resqml2_0_1::WellboreTrajectoryRepresentation, resqml2_0_1::WellboreInterpretation, common::EpcExternalPartReference, resqml2_0_1::Grid2dRepresentation, resqml2_0_1::FaultInterpretation, resqml2_0_1::StratigraphicColumn, resqml2_0_1::StratigraphicUnitInterpretation, resqml2_0_1::BlockedWellboreRepresentation, resqml2_0_1::WellboreFeature, resqml2_0_1::EarthModelInterpretation, resqml2_0_1::DeviationSurveyRepresentation, resqml2_0_1::PlaneSetRepresentation, resqml2_0_1::PointSetRepresentation, resqml2_0_1::GeobodyBoundaryInterpretation, resqml2_0_1::HorizonInterpretation, resqml2_0_1::StringTableLookup, resqml2_0_1::FluidBoundaryFeature, resqml2_0_1::Grid2dSetRepresentation, resqml2::GridConnectionSetRepresentation, resqml2_0_1::TectonicBoundaryFeature, resqml2::RepresentationSetRepresentation, resqml2_0_1::StructuralOrganizationInterpretation, prodml2_0::FiberOpticalPath, resqml2::SubRepresentation, resqml2_0_1::GeologicUnitFeature, resqml2_0_1::OrganizationFeature, prodml2_0::DasInstrumentBox, resqml2_0_1::BoundaryFeatureInterpretation, resqml2_0_1::FrontierFeature, resqml2_0_1::GeobodyFeature, resqml2_0_1::SeismicLineSetFeature, resqml2_0_1::StratigraphicUnitFeature, resqml2_0_1::BoundaryFeature, resqml2::TimeSeries, and resqml2_0_1::GenericFeatureInterpretation.

virtual void common::AbstractObject::importRelationshipSetFromEpc ( common::EpcDocument epcDoc)
protectedpure virtual
bool common::AbstractObject::isPartial ( ) const
inline

Indicate if the instance is actually a partial object. A partial object just contains a mime type, an uuid and a title as a minimum amount of information. A partial object is never explicit in an EPC document : it is not a file.

void AbstractObject::pushBackExtraMetadata ( const std::string &  key,
const std::string &  value 
)

Push back an extra metadata (not a standard one)

void common::AbstractObject::serializeIntoStream ( std::ostream *  stream)

Serialize the instance into a stream.

Parameters
streamThe stream must be opened for writing and won't be closed.
string AbstractObject::serializeIntoString ( )

Serialize the gsoap proxy into a string

void AbstractObject::setMetadata ( const std::string &  guid,
const std::string &  title,
const std::string &  editor,
const time_t &  creation,
const std::string &  originator,
const std::string &  description,
const time_t &  lastUpdate,
const std::string &  format,
const std::string &  descriptiveKeywords 
)
protected

It is too dangerous for now to modify the uuid because too much things depend on it. That's why this method is only protected : it is only used by derived class constructor. Set a title and other common metadata for the resqml instance. Set to empty string or zero if you don't want to use.

Parameters
titleThe title to set to the resqml instance. Set to empty string if you don't want to set it.
void AbstractObject::setMetadata ( const std::string &  title,
const std::string &  editor,
const time_t &  creation,
const std::string &  originator,
const std::string &  description,
const time_t &  lastUpdate,
const std::string &  format,
const std::string &  descriptiveKeywords 
)

Set a title and other common metadata for the resqml instance. Set to empty string or zero if you don't want to use.

Parameters
titleThe title to set to the resqml instance. Set to empty string if you don't want to set it.

The documentation for this class was generated from the following files: