imsweb / seerapi-client-java

A SEER*API Java client
MIT License
7 stars 1 forks source link

Investigate using lighter dependencies #6

Closed ctmay4 closed 9 years ago

ctmay4 commented 9 years ago

The dependency list is very small. Only the need for a JAX-RS 2.0 client and the Jackson libs:

dependencies {
    compile 'org.glassfish.jersey.core:jersey-client:2.7'
    compile 'org.glassfish.jersey.media:jersey-media-json-jackson:2.7'

    testCompile 'junit:junit:4.11'
}

However Jersey brings a large amount of associative dependencies. I'm not sure if there is a more lightweight JAX-RS option.

dependencies

I would prefer to keep this library lighter. I could just use HttpClient or URLConnection and roll my own. There are also a few other libraries I found that might work:

https://github.com/beders/Resty http://unirest.io/java.html

Using HttpClient might be the safest long-term.

ctmay4 commented 9 years ago

Began testing conversion to Retrofit (http://square.github.io/retrofit/) and have been very impressed. Much lighter dependencies and allows for better code restructuring. I've converted SiteRecode and NAACCR APIs so far and all looks good.

ctmay4 commented 9 years ago

This is done and released with version 2.0 (https://github.com/imsweb/seerapi-client-java/releases/tag/v2.0)