本文整理汇总了Java中com.addthis.bundle.core.Bundle.asValueArray方法的典型用法代码示例。如果您正苦于以下问题:Java Bundle.asValueArray方法的具体用法?Java Bundle.asValueArray怎么用?Java Bundle.asValueArray使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类com.addthis.bundle.core.Bundle
的用法示例。
在下文中一共展示了Bundle.asValueArray方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: setValue
import com.addthis.bundle.core.Bundle; //导入方法依赖的package包/类
@Override public void setValue(Bundle bundle, @Nullable ValueObject value) {
if (value == null) {
bundle.asMap().replaceAll((a, b) -> null);
} else if (array || (value.getObjectType() == ValueObject.TYPE.ARRAY)) {
ValueArray bundleList = bundle.asValueArray();
ValueArray valueList = value.asArray();
int bundleSize = bundleList.size();
int valueSize = valueList.size();
if (valueSize > bundleSize) {
bundleList.addAll(bundleSize, valueList.subList(bundleSize, valueSize));
}
for (int i = 0; i < Math.min(bundleSize, valueSize); i++) {
bundleList.set(i, valueList.get(i));
}
} else {
ValueMap bundleMap = bundle.asValueMap();
ValueMap valueMap = value.asMap();
if (!force && !Sets.intersection(bundleMap.keySet(), valueMap.keySet()).isEmpty()) {
String message = String.format(
"Trying to write value map (%s) to bundle root (%s), at least one field already exists and " +
"force=false", valueMap, bundle);
throw new IllegalArgumentException(message);
}
bundleMap.putAll(valueMap);
}
}
示例2: getValue
import com.addthis.bundle.core.Bundle; //导入方法依赖的package包/类
@Nullable @Override public ValueObject getValue(Bundle bundle) {
if (array) {
return bundle.asValueArray();
} else {
return bundle.asValueMap();
}
}