Package 

Interface ViewIdentifierResolver


  • 
    public interface ViewIdentifierResolver
    
                        

    A utility interface to assign a unique id to the child of a View. This interface is meant for internal usage, please use it carefully.

    • Method Summary

      Modifier and Type Method Description
      abstract Long resolveViewId(View view) Resolves a persistent, unique id for the given view.
      abstract Long resolveChildUniqueIdentifier(View parent, String childName) Generates a persistent unique identifier for a virtual child view based on its unique name and its physical parent.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Method Detail

      • resolveViewId

         abstract Long resolveViewId(View view)

        Resolves a persistent, unique id for the given view.

        Parameters:
        view - the view
      • resolveChildUniqueIdentifier

         abstract Long resolveChildUniqueIdentifier(View parent, String childName)

        Generates a persistent unique identifier for a virtual child view based on its unique name and its physical parent. The identifier will only be created once and persisted in the parent View tag to provide consistency. In case there was already a value with the same key in the tags and this was used by a different party we will try to use this value as identifier if it's a Long, in other case we will return null. This last scenario is highly unlikely but we are doing this in order to safely treat possible collisions with client tags.

        Parameters:
        parent - the parent View of the virtual child
        childName - the unique name of the virtual child