public static boolean isResourceReference(String value) { return IS_RESOURCE_REFERENCE.matcher(value).find() && !isNull(value); }
public static String qualifyResName(String possiblyQualifiedResourceName, String contextPackageName) { if (possiblyQualifiedResourceName == null) { return null; } if (AttributeResource.isNull(possiblyQualifiedResourceName)) { return null; } // Was not able to fully qualify the resource name String fullyQualifiedResourceName = qualifyResourceName(possiblyQualifiedResourceName, contextPackageName, null); if (fullyQualifiedResourceName == null) { return null; } return fullyQualifiedResourceName.replaceAll("[@+]", ""); }
@Override public int getAttributeResourceValue(String namespace, String attribute, int defaultValue) { String attr = getAttribute(namespace, attribute); if (attr != null && attr.startsWith("@") && !AttributeResource.isNull(attr)) { return getResourceId(attr, packageName, null); } return defaultValue; }
private TypedResource resolveResourceValue(TypedResource value, ResTable_config config, ResName resName) { while (value != null && value.isReference()) { String s = value.asString(); if (AttributeResource.isNull(s) || AttributeResource.isEmpty(s)) { value = null; } else { String refStr = s.substring(1).replace("+", ""); resName = ResName.qualifyResName(refStr, resName); value = resourceTable.getValue(resName, config); } } return value; }
private ResName resolveResource(TypedResource value, ResTable_config config, ResName resName) { while (value != null && value.isReference()) { String s = value.asString(); if (AttributeResource.isNull(s) || AttributeResource.isEmpty(s)) { value = null; } else { String refStr = s.substring(1).replace("+", ""); resName = ResName.qualifyResName(refStr, resName); value = resourceTable.getValue(resName, config); } } return resName; }
int valueInt; if (value == null || AttributeResource.isNull(value)) { type = DataType.NULL; valueInt = TypedValue.DATA_NULL_EMPTY;
if (attribute == null || attribute.isNull()) { return null; } else {
private int getResourceId(String possiblyQualifiedResourceName, String defaultPackageName, String defaultType) { if (AttributeResource.isNull(possiblyQualifiedResourceName)) return 0; if (AttributeResource.isStyleReference(possiblyQualifiedResourceName)) { ResName styleReference = AttributeResource.getStyleReference(possiblyQualifiedResourceName, defaultPackageName, "attr"); Integer resourceId = resourceTable.getResourceId(styleReference); if (resourceId == null) { throw new Resources.NotFoundException(styleReference.getFullyQualifiedName()); } return resourceId; } if (AttributeResource.isResourceReference(possiblyQualifiedResourceName)) { ResName resourceReference = AttributeResource.getResourceReference(possiblyQualifiedResourceName, defaultPackageName, defaultType); Integer resourceId = resourceTable.getResourceId(resourceReference); if (resourceId == null) { throw new Resources.NotFoundException(resourceReference.getFullyQualifiedName()); } return resourceId; } possiblyQualifiedResourceName = removeLeadingSpecialCharsIfAny(possiblyQualifiedResourceName); ResName resName = ResName.qualifyResName(possiblyQualifiedResourceName, defaultPackageName, defaultType); Integer resourceId = resourceTable.getResourceId(resName); return resourceId == null ? 0 : resourceId; }
private void convertAndFill(AttributeResource attribute, TypedValue outValue, ResTable_config config, boolean resolveRefs) { if (attribute.isNull()) { outValue.type = TypedValue.TYPE_NULL; outValue.data = TypedValue.DATA_NULL_UNDEFINED; if (attribute.isNull()) { outValue.type = TypedValue.TYPE_NULL; return;
int valueInt; if (value == null || AttributeResource.isNull(value)) { type = DataType.NULL; valueInt = TypedValue.DATA_NULL_EMPTY;
public static String qualifyResName(String possiblyQualifiedResourceName, String contextPackageName) { if (possiblyQualifiedResourceName == null) { return null; } if (AttributeResource.isNull(possiblyQualifiedResourceName)) { return null; } // Was not able to fully qualify the resource name String fullyQualifiedResourceName = qualifyResourceName(possiblyQualifiedResourceName, contextPackageName, null); if (fullyQualifiedResourceName == null) { return null; } return fullyQualifiedResourceName.replaceAll("[@+]", ""); }
@Override public int getAttributeResourceValue(String namespace, String attribute, int defaultValue) { String attr = getAttribute(namespace, attribute); if (attr != null && attr.startsWith("@") && !AttributeResource.isNull(attr)) { return getResourceId(attr, packageName, null); } return defaultValue; }
@Override public int getAttributeResourceValue(String namespace, String attribute, int defaultValue) { String attr = getAttribute(namespace, attribute); if (attr != null && attr.startsWith("@") && !AttributeResource.isNull(attr)) { return getResourceId(attr, packageName, null); } return defaultValue; }
@Override public int getAttributeResourceValue(String namespace, String attribute, int defaultValue) { String attr = getAttribute(namespace, attribute); if (attr != null && attr.startsWith("@") && !AttributeResource.isNull(attr)) { return getResourceId(attr, packageName, null); } return defaultValue; }
private TypedResource resolveResourceValue(TypedResource value, String qualifiers, ResName resName) { while (value != null && value.isReference()) { String s = value.asString(); if (AttributeResource.isNull(s) || AttributeResource.isEmpty(s)) { value = null; } else { String refStr = s.substring(1).replace("+", ""); resName = ResName.qualifyResName(refStr, resName); value = resourceTable.getValue(resName, qualifiers); } } return value; }
private TypedResource resolveResourceValue(TypedResource value, String qualifiers, ResName resName) { while (value != null && value.isReference()) { String s = value.asString(); if (AttributeResource.isNull(s) || AttributeResource.isEmpty(s)) { value = null; } else { String refStr = s.substring(1).replace("+", ""); resName = ResName.qualifyResName(refStr, resName); value = resourceTable.getValue(resName, qualifiers); } } return value; }
private ResName resolveResource(TypedResource value, ResTable_config config, ResName resName) { while (value != null && value.isReference()) { String s = value.asString(); if (AttributeResource.isNull(s) || AttributeResource.isEmpty(s)) { value = null; } else { String refStr = s.substring(1).replace("+", ""); resName = ResName.qualifyResName(refStr, resName); value = resourceTable.getValue(resName, config); } } return resName; }
private ResName resolveResource(TypedResource value, String qualifiers, ResName resName) { while (value != null && value.isReference()) { String s = value.asString(); if (AttributeResource.isNull(s) || AttributeResource.isEmpty(s)) { value = null; } else { String refStr = s.substring(1).replace("+", ""); resName = ResName.qualifyResName(refStr, resName); value = resourceTable.getValue(resName, qualifiers); } } return resName; }
private TypedResource resolveResourceValue(TypedResource value, String qualifiers, ResName resName) { while (value != null && value.isReference()) { String s = value.asString(); if (AttributeResource.isNull(s) || AttributeResource.isEmpty(s)) { value = null; } else { String refStr = s.substring(1).replace("+", ""); resName = ResName.qualifyResName(refStr, resName); value = getResourceLoader().getValue(resName, qualifiers); } } return value; }
private ResName resolveResource(TypedResource value, String qualifiers, ResName resName) { while (value != null && value.isReference()) { String s = value.asString(); if (AttributeResource.isNull(s) || AttributeResource.isEmpty(s)) { value = null; } else { String refStr = s.substring(1).replace("+", ""); resName = ResName.qualifyResName(refStr, resName); value = getResourceLoader().getValue(resName, qualifiers); } } return resName; }