本文整理汇总了Java中com.sforce.ws.bind.XmlObject.getChildren方法的典型用法代码示例。如果您正苦于以下问题:Java XmlObject.getChildren方法的具体用法?Java XmlObject.getChildren怎么用?Java XmlObject.getChildren使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类com.sforce.ws.bind.XmlObject
的用法示例。
在下文中一共展示了XmlObject.getChildren方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: extactJoinResults
import com.sforce.ws.bind.XmlObject; //导入方法依赖的package包/类
private void extactJoinResults(XmlObject node, List<Object[]> result) throws TranslatorException {
Object val = node.getField(TYPE);
if(val instanceof String) {
extractValuesFromElement(node, result, (String)val);
} else if (node.hasChildren()) {
Iterator<XmlObject> children = node.getChildren();
while (children.hasNext()) {
XmlObject item = children.next();
extactJoinResults(item, result);
}
}
}
示例2: setFieldInSObject
import com.sforce.ws.bind.XmlObject; //导入方法依赖的package包/类
void setFieldInSObject( SObject sobjPass, XmlObject element ) {
Iterator<XmlObject> children = element.getChildren();
String name = element.getName().getLocalPart();
if ( !children.hasNext() ) {
sobjPass.setSObjectField( name, element.getValue() );
} else {
SObject child = new SObject();
child.setName( new QName( name ) );
while ( children.hasNext() ) {
setFieldInSObject( child, children.next() );
}
sobjPass.setSObjectField( name, child );
}
}
示例3: addFields
import com.sforce.ws.bind.XmlObject; //导入方法依赖的package包/类
public LinkedHashMap<String, Field> addFields(
XmlObject parent,
Map<String, DataType> columnsToTypes
) throws StageException {
LinkedHashMap<String, Field> map = new LinkedHashMap<>();
Iterator<XmlObject> iter = parent.getChildren();
String type = null;
while (iter.hasNext()) {
XmlObject obj = iter.next();
String key = obj.getName().getLocalPart();
if ("type".equals(key)) {
// Housekeeping field
type = obj.getValue().toString().toLowerCase();
continue;
}
if (obj.hasChildren()) {
map.put(key, Field.createListMap(addFields(obj, columnsToTypes)));
} else {
Object val = obj.getValue();
if ("Id".equalsIgnoreCase(key) && null == val) {
// Get a null Id if you don't include it in the SELECT
continue;
}
if (type == null) {
throw new StageException(
Errors.FORCE_04,
"No type information for " + obj.getName().getLocalPart() +
". Specify component fields of compound fields, e.g. Location__Latitude__s or BillingStreet"
);
}
com.sforce.soap.partner.Field sfdcField = metadataCache.get(type).nameToField.get(key.toLowerCase());
Field field;
if (sfdcField == null) {
// null relationship
field = Field.createListMap(new LinkedHashMap<>());
} else {
DataType dataType = (columnsToTypes != null) ? columnsToTypes.get(key.toLowerCase()) : null;
field = createField(val, (dataType == null ? DataType.USE_SALESFORCE_TYPE : dataType), sfdcField);
}
if (conf.createSalesforceNsHeaders) {
setHeadersOnField(field, sfdcField);
}
map.put(key, field);
}
}
return map;
}
示例4: processXmlObject
import com.sforce.ws.bind.XmlObject; //导入方法依赖的package包/类
/**
* Parse XML object and store found values into value map.
* During iterations <code>prefixName</code> concatenates with current local part of input object.
* On the last iteration prefixName will become as a column name.
* <code>Id</code> and <code>type</code> elements are skipped, except type of child relation.
*
*
* @param xo - XML object to be processed.
* @param prefixName - name of all parent branches, appended with underscore.
* @param prefixTypeName - name of child relation.
*/
protected void processXmlObject(XmlObject xo, String prefixName, String prefixTypeName) {
if (valueMap == null) {
valueMap = new TreeMap<>(String.CASE_INSENSITIVE_ORDER);
}
Iterator<XmlObject> xos = xo.getChildren();
if (xos.hasNext()) {
// delete the fixed id and type elements when find firstly
int typeCount = 0;
int idCount = 0;
String typeName = null;
while (xos.hasNext()) {
XmlObject objectValue = xos.next();
if (objectValue != null) {
XmlObject xmlObject = objectValue;
if ("type".equals(xmlObject.getName().getLocalPart()) && typeCount == 0) {
typeCount++;
typeName = xmlObject.getValue().toString();
continue;
}
if ("Id".equals(xmlObject.getName().getLocalPart()) && idCount == 0) {
idCount++;
continue;
}
if (null != prefixName) {
String tempPrefixName = prefixName + schema.getProp(SalesforceSchemaConstants.COLUMNNAME_DELIMTER)
+ xo.getName().getLocalPart();
String tempPrefixTypeName = null;
if (null != prefixTypeName) {
tempPrefixTypeName = prefixTypeName
+ schema.getProp(SalesforceSchemaConstants.COLUMNNAME_DELIMTER)
+ xo.getName().getLocalPart();
} else if (typeCount != 0 && null != typeName) {
// Initialize type prefix name only for child relation object.
tempPrefixTypeName = tempPrefixName
+ schema.getProp(SalesforceSchemaConstants.COLUMNNAME_DELIMTER) + typeName;
}
processXmlObject(xmlObject, tempPrefixName, tempPrefixTypeName);
} else {
processXmlObject(xmlObject, xo.getName().getLocalPart(), prefixTypeName);
}
}
}
} else {
placeValueInFieldMap(prefixName, xo);
// Extended columns for parent-to-child relation with the same values.
if (null != prefixTypeName) {
placeValueInFieldMap(prefixTypeName, xo);
}
}
}