Class UserProfileImageURNFactory

java.lang.Object
com.iizix.urn.user.UserProfileImageURNFactory
All Implemented Interfaces:
IURNProvider

public class UserProfileImageURNFactory extends Object implements IURNProvider
User Profile Image provider for IIZI URN's.

User Profile Image URN's are encoded in IIZI as:

    urn:iz-pimg:type:id=userID or

    urn:iz-pimg:type:name=userName

The type is the image type are the {@link UserProfileImageURNType#name()}, i.e. one of the Strings

  • Uploaded
  • CroppedUploaded
  • Large
  • Thumbnail

The userID is a {code long} value unique to the user ID in question, the userName is a UTF-8 encoded string.

Author:
Christopher Mindus
See Also:
  • Field Details

  • Method Details

    • initialize

      public static void initialize(URNFactory factory, IUserProfileImageURNProvider provider)
      Initializes the User Profile string URN factory.

      This method is not intended to be called by user code, the system will handle it.

      Parameters:
      factory - The URN factory instance.
      provider - The User Profile Image URN provider.
      Throws:
      RuntimeException - If this method is called twice for the same URN provider.
    • getInstance

      public static UserProfileImageURNFactory getInstance()
      Gets the singleton instance of the URL URN factory.
      Returns:
      The URL URN factory instance.
    • getNID

      public NID getNID()
      Gets the Naming IDentifier of the provider.
      Specified by:
      getNID in interface IURNProvider
      Returns:
      The NID.PROFILE_IMAGE.
    • getResourceTypes

      public List<URNResourceType> getResourceTypes()
      Gets the location or locations supported by the provider.
      Specified by:
      getResourceTypes in interface IURNProvider
      Returns:
      The supported locations: none, i.e. an empty list.
    • parse

      public URN parse(String urnString, String nss, String req, String query, String fragment) throws URNException
      Parses the URN after the NID specification, i.e. after "urn:NID:".
      Specified by:
      parse in interface IURNProvider
      Parameters:
      urnString - The full unparsed original URN string.
      nss - The NSS part of the string (before request/query/fragment).
      req - The decoded request String (without "?+"), null for none.
      query - The decoded query String (without "?="), null for none.
      fragment - The decoded fragment, null for none.
      Returns:
      The URN instance.
      Throws:
      URNException - For URN exceptions.