Class UserAgent

java.lang.Object
org.eclipse.jgit.transport.UserAgent

public class UserAgent extends 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 Details

    • userAgent

      private static volatile String userAgent
  • Constructor Details

    • UserAgent

      private UserAgent()
  • Method Details

    • computeUserAgent

      private static String computeUserAgent()
    • computeVersion

      private static String computeVersion()
    • clean

      static String clean(String s)
    • get

      public static 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(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 String getAgent(Set<String> options, String transportAgent)
    • hasAgent

      static boolean hasAgent(Set<String> options)