Class UserAgent


  • public class UserAgent
    extends java.lang.Object
    User agent to be reported by this JGit client and server on the network.

    On HTTP transports this user agent string is always supplied by the JGit client in the User-Agent HTTP header.

    On native transports this user agent string is always sent when JGit is a server. When JGit is a client the user agent string will be supplied to the remote server only if the remote server advertises its own agent identity.

    Since:
    4.0
    • Field Summary

      Fields 
      Modifier and Type Field Description
      private static java.lang.String userAgent  
    • Constructor Summary

      Constructors 
      Modifier Constructor Description
      private UserAgent()  
    • Method Summary

      All Methods Static Methods Concrete Methods 
      Modifier and Type Method Description
      private static java.lang.String clean​(java.lang.String s)  
      private static java.lang.String computeUserAgent()  
      private static java.lang.String computeVersion()  
      static java.lang.String get()
      Get the user agent string advertised by JGit.
      (package private) static java.lang.String getAgent​(java.util.Set<java.lang.String> options, java.lang.String transportAgent)  
      (package private) static boolean hasAgent​(java.util.Set<java.lang.String> options)  
      static void set​(java.lang.String agent)
      Change the user agent string advertised by JGit.
      • Methods inherited from class java.lang.Object

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

      • userAgent

        private static volatile java.lang.String userAgent
    • Constructor Detail

      • UserAgent

        private UserAgent()
    • Method Detail

      • computeUserAgent

        private static java.lang.String computeUserAgent()
      • computeVersion

        private static java.lang.String computeVersion()
      • clean

        private static java.lang.String clean​(java.lang.String s)
      • get

        public static java.lang.String get()
        Get the user agent string advertised by JGit.
        Returns:
        a string similar to "JGit/4.0"; null if the agent has been cleared and should not be shared with a peer.
      • set

        public static void set​(java.lang.String agent)
        Change the user agent string advertised by JGit.

        The new string should start with "JGit/" (for example "JGit/4.0") to advertise the implementation as JGit based.

        Spaces and other whitespace should be avoided as these will be automatically converted to ".".

        User agent strings are restricted to printable ASCII.

        Parameters:
        agent - new user agent string for this running JGit library. Setting to null or empty string will avoid sending any identification to the peer.
      • getAgent

        static java.lang.String getAgent​(java.util.Set<java.lang.String> options,
                                         java.lang.String transportAgent)
      • hasAgent

        static boolean hasAgent​(java.util.Set<java.lang.String> options)