if (items != null) { for (ResourceItem item : items) { ResourceFile source = item.getSource(); if (source != null && LintUtils.isSameResourceFile(context.file, source.getFile())) { continue; ResourceValue rv = item.getResourceValue(false); if (rv instanceof ArrayResourceValue) { ArrayResourceValue arv = (ArrayResourceValue) rv;
@Nullable protected Collection<String> getViewTags( @NonNull Context context, @NonNull ResourceItem item) { // Check view tag in this file. Can I do it cheaply? Try with // an XML pull parser. Or DOM if we have multiple resources looked // up? ResourceFile source = item.getSource(); if (source != null) { File file = source.getFile(); Multimap<String,String> map = getIdToTagsIn(context, file); if (map != null) { return map.get(item.getName()); } } return null; }
list.sort((o1, o2) -> o1.getKey().compareTo(o2.getKey())); if (layouts != null) { for (ResourceItem item : layouts.values()) { ResourceFile source = item.getSource(); if (source == null) { continue; ResourceItem idItem = new ResourceItem(id, ResourceType.ID, null, null); String qualifiers = file.getParentFile().getName();
@NonNull @Override public Location resolve() { // TODO: Look up the exact item location more // closely ResourceFile source = item.getSource(); assert source != null : item; return create(source.getFile()); }
return; ResourceValue resourceValue = items.get(0).getResourceValue(false); if (resourceValue == null) { return;
List<String> list = Lists.newArrayListWithExpectedSize(5); for (ResourceItem item : items) { String qualifiers = item.getQualifiers(); FolderConfiguration configuration = item.getConfiguration(); if (configuration == null) {
if (items != null && !items.isEmpty()) { for (ResourceItem item : items) { String libraryName = item.getLibraryName(); if (libraryName != null && libraryName.startsWith("appcompat-")) { return;
private static boolean checkResourceRepository( @NonNull AbstractResourceRepository resources, @NonNull String name) { List<ResourceItem> items = resources.getResourceItem(ResourceType.DRAWABLE, name); if (items == null) { return false; } // Check if at least one drawable with this name is a vector. for (ResourceItem item : items) { ResourceFile source = item.getSource(); if (source == null) { return false; } File file = source.getFile(); if (!file.getPath().endsWith(SdkConstants.DOT_XML)) { continue; } return SdkConstants.TAG_VECTOR.equals(XmlUtils.getRootTagName(file)); } return false; } }
if (items != null) { for (ResourceItem item : items) { ResourceValue rv = item.getResourceValue(false); if (rv instanceof StyleResourceValue) { StyleResourceValue srv = (StyleResourceValue) rv;
if (items != null) { for (ResourceItem item : items) { ResourceFile source = item.getSource(); if (source != null && LintUtils.isSameResourceFile(context.file, source.getFile())) { continue; ResourceValue rv = item.getResourceValue(false); if (rv instanceof ArrayResourceValue) { ArrayResourceValue arv = (ArrayResourceValue) rv;
ResourceFile source = item.getSource(); if (source != null) { File file = source.getFile();
@Nullable protected Collection<String> getViewTags( @NonNull Context context, @NonNull ResourceItem item) { // Check view tag in this file. Can I do it cheaply? Try with // an XML pull parser. Or DOM if we have multiple resources looked // up? ResourceFile source = item.getSource(); if (source != null) { File file = source.getFile(); Multimap<String,String> map = getIdToTagsIn(context, file); if (map != null) { return map.get(item.getName()); } } return null; }
list.sort((o1, o2) -> o1.getKey().compareTo(o2.getKey())); if (layouts != null) { for (ResourceItem item : layouts.values()) { ResourceFile source = item.getSource(); if (source == null) { continue; k -> ArrayListMultimap.create()); for (String id : ids) { ResourceItem idItem = new ResourceItem(id, ResourceType.ID, null, null); String qualifiers = file.getParentFile().getName();
if (items != null) { for (ResourceItem item : items) { ResourceValue rv = item.getResourceValue(false); if (rv instanceof StyleResourceValue) { StyleResourceValue srv = (StyleResourceValue) rv;
if (items != null) { for (ResourceItem item : items) { ResourceValue resourceValue = item.getResourceValue(false); if (resourceValue != null) { String dimenValue = resourceValue.getValue(); if (dimenValue != null && isDpUnit(dimenValue) && context.isEnabled(DP_ISSUE)) { ResourceFile sourceFile = item.getSource(); assert sourceFile != null; String message = String.format(
ResourceFile source = item.getSource(); if (source != null) { File file = source.getFile();
if (items != null) { for (final ResourceItem item : items) { ResourceValue v = item.getResourceValue(false); if (v != null) { String value = v.getRawXmlValue();
if (items != null) { for (ResourceItem item : items) { ResourceValue resourceValue = item.getResourceValue(false); if (resourceValue != null) { String dimenValue = resourceValue.getValue(); if (dimenValue != null && isDpUnit(dimenValue) && context.isEnabled(DP_ISSUE)) { ResourceFile sourceFile = item.getSource(); assert sourceFile != null; String message = String.format(
ResourceFile source = item.getSource(); if (source == null) { return true; // not certain
private static String replaceUrlWithValue(@NonNull XmlContext context, @NonNull String str) { Project project = context.getProject(); LintClient client = context.getClient(); if (!client.supportsProjectResources()) { return str; } ResourceUrl style = ResourceUrl.parse(str); if (style == null || style.type != ResourceType.STRING || style.framework) { return str; } AbstractResourceRepository resources = client.getProjectResources(project, true); if (resources == null) { return str; } List<ResourceItem> items = resources.getResourceItem(ResourceType.STRING, style.name); if (items == null || items.isEmpty()) { return str; } ResourceValue resourceValue = items.get(0).getResourceValue(false); if (resourceValue == null) { return str; } return resourceValue.getValue() == null ? str : resourceValue.getValue(); } }