@Nullable private Resource getResource(Element element) { ResourceType type = getResourceType(element); if (type != null) { String name = getFieldName(element); return getResource(type, name); } return null; }
int dot = url.indexOf('.', nameBegin); String name = url.substring(nameBegin, dot != -1 ? dot : url.length()); return getResource(type, name); int dot = url.indexOf('.', nameBegin); String name = url.substring(nameBegin, dot != -1 ? dot : url.length()); return getResource(type, name);
Resource resource = getResource(ResourceType.RAW, sb.toString().trim()); from.addReference(resource); Resource definition = getResource(element); if (definition != null) { from = definition; String name = element.getAttributeNS(ANDROID_URI, ATTR_NAME); if (!name.isEmpty() && !name.startsWith("android:")) { Resource resource = getResource(ResourceType.ATTR, name); if (definition == null) { Element style = (Element) element.getParentNode(); definition = getResource(style); if (definition != null) { from = definition;
continue; Resource resource = getResource(type, name); if (mDebug && resource != null) { System.out.println("Marking " + resource + " used because it "
@Nullable private Resource getResourceByJarPath(String path) { // Jars use forward slash paths, not File.separator if (path.startsWith("res/")) { int folderStart = 4; // "res/".length int folderEnd = path.indexOf('/', folderStart); if (folderEnd != -1) { String folderName = path.substring(folderStart, folderEnd); ResourceFolderType folderType = ResourceFolderType.getFolderType(folderName); if (folderType != null) { int nameStart = folderEnd + 1; int nameEnd = path.indexOf('.', nameStart); if (nameEnd != -1) { String name = path.substring(nameStart, nameEnd); List<ResourceType> types = FolderTypeRelationship.getRelatedResourceTypes(folderType); for (ResourceType type : types) { if (type != ResourceType.ID) { Resource resource = getResource(type, name); if (resource != null) { return resource; } } } } } } } return null; }
private void addResource(@NonNull ResourceType type, @NonNull String name, @Nullable String value) { int realValue = value != null ? Integer.decode(value) : -1; Resource resource = getResource(type, name); if (resource != null) { //noinspection VariableNotUsedInsideIf if (value != null) { if (resource.value == -1) { resource.value = realValue; } else { assert realValue == resource.value; } } return; } resource = new Resource(type, name, realValue); mResources.add(resource); if (realValue != -1) { mValueToResource.put(realValue, resource); } Map<String, Resource> nameMap = mTypeToName.get(type); if (nameMap == null) { nameMap = Maps.newHashMapWithExpectedSize(30); mTypeToName.put(type, nameMap); } nameMap.put(name, resource); // TODO: Assert that we don't set the same resource multiple times to different values. // Could happen if you pass in stale data! }
@Nullable private Resource getResourceFromUrl(@NonNull String possibleUrlReference) { ResourceUrl url = ResourceUrl.parse(possibleUrlReference); if (url != null && !url.framework) { return getResource(url.type, url.name); } return null; }
Resource resource = getResource(url.type, url.name); if (resource != null) { if (mDebug) {
Resource resource = getResource(url.type, url.name); if (resource != null) { if (mDebug) {
String name = file.getName(); name = name.substring(0, name.indexOf('.')); Resource resource = getResource(type, name); if (resource != null) { resource.addLocation(file);