本文整理汇总了C++中XNode::GetContent方法的典型用法代码示例。如果您正苦于以下问题:C++ XNode::GetContent方法的具体用法?C++ XNode::GetContent怎么用?C++ XNode::GetContent使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类XNode
的用法示例。
在下文中一共展示了XNode::GetContent方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: ParserOrderBy
OrderBy* GetFeatureRequest::ParserOrderBy(XElement* pxOrderBy)
{
OrderBy* pOrderBy = NULL;
FilterFactory* pFilterFactory = augeGetFilterFactoryInstance();
if(!pxOrderBy->HasChildren())
{
return NULL;
}
pOrderBy = pFilterFactory->CreateOrderBy();
char field_name[AUGE_NAME_MAX];
const char* property_name = NULL;
XNode* pxNode = NULL;
XNodeSet* pxNodeSet = pxOrderBy->GetChildren("PropertyName");
pxNodeSet->Reset();
while((pxNode=pxNodeSet->Next())!=NULL)
{
property_name = pxNode->GetContent();
if(strlen(property_name)>0)
{
ParseFieldName(property_name, field_name, AUGE_NAME_MAX);
pOrderBy->AddField(field_name);
}
}
pxNodeSet->Release();
XAttribute* pxAttr = pxOrderBy->GetAttribute("order");
if(pxAttr!=NULL)
{
const char* order = pxAttr->GetValue();
if(order!=NULL)
{
if(g_stricmp(order,"desc")==0)
{
pOrderBy->SetOrder(augeOrderDesc);
}
//pxAttr->Release();
}
}
return pOrderBy;
}
示例2: Update
g_int TransactionHandler::Update(XNode* pxUpdate, WebContext* pWebContext, FeatureClass* pFeatureClass)
{
int count = 0;
GFilter* pFilter = NULL;
XNode* pxFilter = pxUpdate->GetFirstChild("Filter");
if(pxFilter!=NULL)
{
FilterFactory *factory = augeGetFilterFactoryInstance();
FilterReader *reader = factory->CreateFilerReader(pFeatureClass->GetFields());
pFilter = reader->Read((XElement*)pxFilter);
}
XNodeSet* pxPropertySet = NULL;
pxPropertySet = pxUpdate->GetChildren("Property");
if(pxPropertySet==NULL)
{
if(pFilter!=NULL)
{
pFilter->Release();
pFilter = NULL;
}
pFeatureClass->Release();
return AG_FAILURE;
}
const char* str= NULL;
const char* fname = NULL;
augeFieldType ftype = augeFieldTypeNone;
GField* pField = NULL;
GValue* pValue = NULL;
EnumString* pFieldNames = new EnumString();
EnumValue* pValues = new EnumValue();
XNode* pxName = NULL;
XNode* pxValue = NULL;
XNode* pxProp = NULL;
pxPropertySet->Reset();
while((pxProp = pxPropertySet->Next())!=NULL)
{
pxName = pxProp->GetFirstChild("Name");
pxValue= pxProp->GetFirstChild("Value");
fname = pxName->GetContent();
pField = pFeatureClass->GetField(fname);
if(pField==NULL)
{
continue;
}
ftype = pField->GetType();
switch(ftype)
{
case augeFieldTypeShort:
{
str = pxValue->GetContent();
pValue = new GValue((short)atoi(str));
}
break;
case augeFieldTypeInt:
{
str = pxValue->GetContent();
pValue = new GValue((int)atoi(str));
}
break;
case augeFieldTypeLong:
{
str = pxValue->GetContent();
pValue = new GValue((long)atoi(str));
}
break;
case augeFieldTypeInt64:
{
str = pxValue->GetContent();
pValue = new GValue((int64)atoi(str));
}
break;
case augeFieldTypeFloat:
{
str = pxValue->GetContent();
pValue = new GValue((float)atof(str));
}
break;
case augeFieldTypeDouble:
{
str = pxValue->GetContent();
pValue = new GValue((double)atof(str));
}
break;
case augeFieldTypeChar:
{
str = pxValue->GetContent();
pValue = new GValue(str[0]);
}
break;
case augeFieldTypeString:
{
const char* text = pxValue->GetContent();
if(text==NULL)
//.........这里部分代码省略.........
示例3: ParseXmlQuery
GQuery* GetFeatureRequest::ParseXmlQuery(FeatureClass* pFeatureClass)
{
if(m_pxDoc==NULL)
{
return NULL;
}
XElement* pxRoot = m_pxDoc->GetRootNode();
XElement* pxQuery = (XElement*)pxRoot->GetFirstChild("Query");
if(pxQuery==NULL)
{
return NULL;
}
FilterFactory* pFilterFactory = augeGetFilterFactoryInstance();
GQuery* pQuery = pFilterFactory->CreateQuery();
if(pQuery==NULL)
{
return NULL;
}
XElement* pxFilter = (XElement*)pxQuery->GetFirstChild("Filter");
if(pxFilter!=NULL)
{
GFilter* pFilter = NULL;
FilterReader* reader = pFilterFactory->CreateFilerReader(pFeatureClass->GetFields());
pFilter = reader->Read(pxFilter);
pQuery->SetFilter(pFilter);
}
XElement* pxOrderBy = (XElement*)pxQuery->GetFirstChild("OrderBy");
if(pxOrderBy!=NULL)
{
OrderBy* pOrderBy = ParserOrderBy(pxOrderBy);
if(pOrderBy!=NULL)
{
pQuery->SetOrderBy(pOrderBy);
}
}
//PropertyName
char field_name[AUGE_NAME_MAX];
const char* property_name;
XNode* pxNode = NULL;
XNodeSet* pxNodeSet = pxQuery->GetChildren("PropertyName");
pxNodeSet->Reset();
while((pxNode=pxNodeSet->Next())!=NULL)
{
property_name = pxNode->GetContent();
ParseFieldName(property_name, field_name, AUGE_NAME_MAX);
WebContext* pWebContext = augeGetWebContextInstance();
pQuery->AddSubField(pWebContext->ParameterEncoding(field_name));
}
if(m_max_features>0)
{
pQuery->SetMaxFeatures(m_max_features);
}
if(m_offset>0)
{
pQuery->SetOffset(m_offset);
}
pxNodeSet->Release();
return pQuery;
}