Git Product home page Git Product logo

uap-java's Introduction

ua_parser Java Library

This is the Java implementation of ua-parser. The implementation uses the shared regex patterns and overrides from regexes.yaml.

Build:

mvn package

Usage:

import ua_parser.Parser;
import ua_parser.Client;

...

  String uaString = "Mozilla/5.0 (iPhone; CPU iPhone OS 5_1_1 like Mac OS X) AppleWebKit/534.46 (KHTML, like Gecko) Version/5.1 Mobile/9B206 Safari/7534.48.3";

  Parser uaParser = new Parser();
  Client c = uaParser.parse(uaString);

  System.out.println(c.userAgent.family); // => "Mobile Safari"
  System.out.println(c.userAgent.major);  // => "5"
  System.out.println(c.userAgent.minor);  // => "1"

  System.out.println(c.os.family);        // => "iOS"
  System.out.println(c.os.major);         // => "5"
  System.out.println(c.os.minor);         // => "1"

  System.out.println(c.device.family);    // => "iPhone"

Publish to Sonatype OSSRH and Maven Central Repository

Create a ~/.m2/settings.xml file with the following contents:

<settings>
  <servers>
    <server>
      <id>ossrh</id>
      <username>YOUR_OSSRH_USERNAME</username>
      <password>YOUR_OSSRH_PASSWORD</password>
    </server>
  </servers>

  <profiles>
    <profile>
      <id>ossrh</id>
      <properties>
        <gpg.keyname>YOUR_GPG_KEY_ID</gpg.keyname>
        <gpg.executable>GPG_EXECUTABLE</gpg.executable>
        <gpg.passphrase>YOUR_KEY_PASSPHRASE</gpg.passphrase>
      </properties>
    </profile>
  </profiles>
</settings>

On Mac OS X, the gpg.executable property should be gpg2.

Instructions for Build/Deploy/Release

  1. bump pom.xml version to non-snapshot version
  2. commit and push to github
  3. mvn clean deploy -P ossrh
  4. log in to Sonatype OSSRH
  5. click Staging Repositories
  6. find the release comgithubua-parser-*
  7. verify the contents are ok
  8. click Close (wait for validation steps under the Activity tab to complete)
  9. click Release
  10. bump pom.xml version to next snapshot version
  11. commit and push to GitHub

Additional Resources for Deploying to Sonatype OSSRH and Maven Central Repository

Deploying to Sonatype OSSRH using Maven
Releasing the artifact in Sonatype OSSRH

Sonatype OSSRH is synced with Maven Central Repository so the artifacts will appear in Maven Central Repo automatically shortly after releasing.

Author:

Based on the python implementation by Lindsey Simon and using agent data from BrowserScope

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.