Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Make dependencies truly optionel and clean up android pom. #239

Merged
merged 8 commits into from Oct 13, 2015

Conversation

Projects
None yet
2 participants
@botunge
Copy link
Contributor

botunge commented Oct 5, 2015

Phloc and Schematron has been made truly optionel and removed from the android jars to make them smaller.
I tried to remove javax.servlet and some of the server side classes from the client, but failed. So i undid the change but left some outcommented code in the pom.xml for android.

Im trying to make it easier to use the android jar in android and (using j2objc) in Ios.

botunge added some commits Oct 1, 2015

Make dependencies truly optionel + clean up / minimize android build
both Phloc and Schematron was not truly optionel since they was referred
from different files. So the references has been moved to a factory and
ObjectUtil extended for some of the missing methods, where Schematron
was used. Android pom file is cleaned so that all artifcates are build
using the same base configuration and then schematron, phloc and some
server components have been removed from artifact to minimize android
artifacts.
undo attempt to remove javax.servlet dependency
undo attempt to remove javax.servlet dependency
make sure hapi fhir base creates sources jar
In order to streamline build of android jar with dependencies all
dependencies should publish a sources jar also.
Move dependency on java.util.jar and java.beans to optional dependency
Move some more dependencies to optionel dependencies and write more test
for different base methods.
@botunge

This comment has been minimized.

Copy link
Contributor Author

botunge commented Oct 6, 2015

hmm..not sure i can do much about the decrease in coverage..

@jamesagnew

This comment has been minimized.

Copy link
Owner

jamesagnew commented Oct 6, 2015

Don't sweat the coverage thing. :) Coveralls is a bit flaky and tiny variances are usually just noise.

This looks awesome, I'm planning on giving it a good review tonight or tomorrow and I'll merge it then.

@botunge

This comment has been minimized.

Copy link
Contributor Author

botunge commented Oct 6, 2015

Thanks that sounds great... BTW.. i think you received an email today from Tomas at Systematic.. I'm one of the guys he was writing about :)

import java.lang.reflect.Method;

import ca.uhn.fhir.util.reflection.IBeanUtils;

public class BeanUtils {

This comment has been minimized.

Copy link
@jamesagnew

jamesagnew Oct 12, 2015

Owner

FYI I've actually deleted this class in the latest trunk. Early versions of HAPI FHIR used method accessors via reflection to work with the model, but we've since moved to using field level accessors, which are somewhat faster. In the medium-term I'd like to look at coming up with something even faster.. I made one pass at trying to get ASM working to create dynamic accessors and mutators but my profiling showed that this wasn't actually any faster. I guess bottom line, more to come here....

@@ -132,6 +132,20 @@
</dependencies>

<build>
<plugins>

This comment has been minimized.

Copy link
@jamesagnew

jamesagnew Oct 13, 2015

Owner

The source plugin actualy gets invoked for all relevant modules as a part of hapi-deployable-pom/pom.xml, but only when HAPI is built with the mvn -P DIST argument/profile in order to be a bit faster.

Would it make sense to similarly make generating an android source JAR a part of the same profile?

jamesagnew added a commit that referenced this pull request Oct 13, 2015

Merge pull request #239 from botunge/master
Make dependencies truly optionel and clean up android pom.

@jamesagnew jamesagnew merged commit a2bf374 into jamesagnew:master Oct 13, 2015

1 of 2 checks passed

coverage/coveralls Coverage decreased (-0.3%) to 83.443%
Details
continuous-integration/travis-ci/pr The Travis CI build passed
Details

jamesagnew added a commit that referenced this pull request Oct 13, 2015

@jamesagnew

This comment has been minimized.

Copy link
Owner

jamesagnew commented Oct 13, 2015

I've merged this in now. Thanks for the pull!

This seems like a very positive improvement for the android library.. Would you be interested in joining the project as a committer to maintain this stuff more directly?

@botunge

This comment has been minimized.

Copy link
Contributor Author

botunge commented Oct 13, 2015

Thank you for merging.

I will take a look at the android sources jar and see if i can generate it using the same profile as the rest..

I might be able to contribute to (at least the android module) more directly..Currently i'm doing this "off work" even though we use it at work, so its hobbby based commits.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.