Class GravatarServiceImpl

  • All Implemented Interfaces:
    GravatarService

    public class GravatarServiceImpl
    extends Object
    implements GravatarService
    A gravatar is a dynamic image resource that is requested from the gravatar.com server. This class calculates the gravatar url and fetches gravatar images. See http://en.gravatar.com/site/implement/url .

    This class is thread-safe, Gravatar objects can be shared.

    Currently this service is set to only allow images for general audiences and the Default image is hardcoded.

    • Method Detail

      • getGravatarUrl

        @Nullable
        public @Nullable String getGravatarUrl​(@Nullable
                                               @Nullable String email,
                                               int size)
        Specified by:
        getGravatarUrl in interface GravatarService
        Parameters:
        email - to get gravatar url for
        size - Specify a gravatar size between 1 and 512 pixels.
        Returns:
        url to the users image on the gravatar server
      • getGravatarUrl

        @Nullable
        public @Nullable String getGravatarUrl​(@Nullable
                                               @Nullable String email)
        Returns A gravatar for the given emails with the default size of 25 pixels.
        Specified by:
        getGravatarUrl in interface GravatarService
        Parameters:
        email - to get gravatar url for
        Returns:
        url to the users image on the gravatar server
      • getDefaultGravatarUrl

        @Nullable
        public @Nullable String getDefaultGravatarUrl​(int size)
        Returns the url for the default gravatar.
        Specified by:
        getDefaultGravatarUrl in interface GravatarService
        Parameters:
        size - a gravatar size between 1 and 512 pixels.
        Returns:
        the url for the default gravatar.
      • download

        public byte[] download​(String email,
                               int size)
                        throws GravatarDownloadException
        Downloads the gravatar for the given URL using Java URL and returns a byte array containing the gravatar jpg, returns null if no gravatar was found.
        Parameters:
        email - to get gravatar for
        size - a gravatar size between 1 and 512 pixels.
        Returns:
        byte stream of gravatar image
        Throws:
        GravatarDownloadException - if something goes wrong...
      • setGravatarSupported

        public void setGravatarSupported​(boolean enabled,
                                         @NotNull
                                         @NotNull String newUrl)
        Updates whether or not gravatars are enabled for this Bamboo instance
        Specified by:
        setGravatarSupported in interface GravatarService
        Parameters:
        enabled - whether its enabled or not
        newUrl - the URL of the Gravatar server the user wants to use
      • getGravatarServerUrl

        @NotNull
        public @NotNull String getGravatarServerUrl()
        Specified by:
        getGravatarServerUrl in interface GravatarService
        Returns:
        the String value of the URL of the Gravatar server being used