com.android.tools.lint.checks
Class WrongIdDetector

java.lang.Object
  extended by com.android.tools.lint.detector.api.Detector
      extended by com.android.tools.lint.detector.api.ResourceXmlDetector
          extended by com.android.tools.lint.detector.api.LayoutDetector
              extended by com.android.tools.lint.checks.WrongIdDetector
All Implemented Interfaces:
com.android.tools.lint.detector.api.Detector.XmlScanner

public class WrongIdDetector
extends com.android.tools.lint.detector.api.LayoutDetector

Checks for duplicate ids within a layout and within an included layout


Nested Class Summary
 
Nested classes/interfaces inherited from class com.android.tools.lint.detector.api.Detector
com.android.tools.lint.detector.api.Detector.BinaryResourceScanner, com.android.tools.lint.detector.api.Detector.ClassScanner, com.android.tools.lint.detector.api.Detector.GradleScanner, com.android.tools.lint.detector.api.Detector.JavaScanner, com.android.tools.lint.detector.api.Detector.OtherFileScanner, com.android.tools.lint.detector.api.Detector.ResourceFolderScanner, com.android.tools.lint.detector.api.Detector.XmlScanner
 
Field Summary
static com.android.tools.lint.detector.api.Issue INVALID
          An ID declaration which is not valid
static com.android.tools.lint.detector.api.Issue NOT_SIBLING
          Reference to an id that is not a sibling
static com.android.tools.lint.detector.api.Issue UNKNOWN_ID
          Reference to an unknown id
static com.android.tools.lint.detector.api.Issue UNKNOWN_ID_LAYOUT
          Reference to an id that is not in the current layout
 
Fields inherited from interface com.android.tools.lint.detector.api.Detector.XmlScanner
ALL
 
Constructor Summary
WrongIdDetector()
          Constructs a duplicate id check
 
Method Summary
 void afterCheckFile(com.android.tools.lint.detector.api.Context context)
           
 void afterCheckProject(com.android.tools.lint.detector.api.Context context)
           
 boolean appliesTo(com.android.resources.ResourceFolderType folderType)
           
 void beforeCheckFile(com.android.tools.lint.detector.api.Context context)
           
 java.util.Collection<java.lang.String> getApplicableAttributes()
           
 java.util.Collection<java.lang.String> getApplicableElements()
           
 com.android.tools.lint.detector.api.Speed getSpeed()
           
 void visitAttribute(com.android.tools.lint.detector.api.XmlContext context, org.w3c.dom.Attr attribute)
           
 void visitElement(com.android.tools.lint.detector.api.XmlContext context, org.w3c.dom.Element element)
           
 
Methods inherited from class com.android.tools.lint.detector.api.LayoutDetector
hasPadding, isHeightFillParent, isWidthFillParent
 
Methods inherited from class com.android.tools.lint.detector.api.ResourceXmlDetector
appliesTo, run
 
Methods inherited from class com.android.tools.lint.detector.api.Detector
afterCheckLibraryProject, applicableSuperClasses, appliesToFolder, appliesToResourceRefs, beforeCheckLibraryProject, beforeCheckProject, checkBinaryResource, checkCall, checkClass, checkClass, checkFolder, checkInstruction, createJavaVisitor, getApplicableAsmNodeTypes, getApplicableCallNames, getApplicableCallOwners, getApplicableFiles, getApplicableMethodNames, getApplicableNodeTypes, getSpeed, visitBuildScript, visitDocument, visitElementAfter, visitMethod, visitResourceReference
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface com.android.tools.lint.detector.api.Detector.XmlScanner
visitDocument, visitElementAfter
 

Field Detail

UNKNOWN_ID

public static final com.android.tools.lint.detector.api.Issue UNKNOWN_ID
Reference to an unknown id


NOT_SIBLING

public static final com.android.tools.lint.detector.api.Issue NOT_SIBLING
Reference to an id that is not a sibling


INVALID

public static final com.android.tools.lint.detector.api.Issue INVALID
An ID declaration which is not valid


UNKNOWN_ID_LAYOUT

public static final com.android.tools.lint.detector.api.Issue UNKNOWN_ID_LAYOUT
Reference to an id that is not in the current layout

Constructor Detail

WrongIdDetector

public WrongIdDetector()
Constructs a duplicate id check

Method Detail

appliesTo

public boolean appliesTo(@NonNull
                         com.android.resources.ResourceFolderType folderType)
Overrides:
appliesTo in class com.android.tools.lint.detector.api.LayoutDetector

getSpeed

@NonNull
public com.android.tools.lint.detector.api.Speed getSpeed()
Overrides:
getSpeed in class com.android.tools.lint.detector.api.Detector

getApplicableAttributes

public java.util.Collection<java.lang.String> getApplicableAttributes()
Specified by:
getApplicableAttributes in interface com.android.tools.lint.detector.api.Detector.XmlScanner
Overrides:
getApplicableAttributes in class com.android.tools.lint.detector.api.Detector

getApplicableElements

public java.util.Collection<java.lang.String> getApplicableElements()
Specified by:
getApplicableElements in interface com.android.tools.lint.detector.api.Detector.XmlScanner
Overrides:
getApplicableElements in class com.android.tools.lint.detector.api.Detector

beforeCheckFile

public void beforeCheckFile(@NonNull
                            com.android.tools.lint.detector.api.Context context)
Overrides:
beforeCheckFile in class com.android.tools.lint.detector.api.Detector

afterCheckFile

public void afterCheckFile(@NonNull
                           com.android.tools.lint.detector.api.Context context)
Overrides:
afterCheckFile in class com.android.tools.lint.detector.api.Detector

afterCheckProject

public void afterCheckProject(@NonNull
                              com.android.tools.lint.detector.api.Context context)
Overrides:
afterCheckProject in class com.android.tools.lint.detector.api.Detector

visitElement

public void visitElement(@NonNull
                         com.android.tools.lint.detector.api.XmlContext context,
                         @NonNull
                         org.w3c.dom.Element element)
Specified by:
visitElement in interface com.android.tools.lint.detector.api.Detector.XmlScanner
Overrides:
visitElement in class com.android.tools.lint.detector.api.Detector

visitAttribute

public void visitAttribute(@NonNull
                           com.android.tools.lint.detector.api.XmlContext context,
                           @NonNull
                           org.w3c.dom.Attr attribute)
Specified by:
visitAttribute in interface com.android.tools.lint.detector.api.Detector.XmlScanner
Overrides:
visitAttribute in class com.android.tools.lint.detector.api.Detector