Giter Site home page Giter Site logo

beacon-of-beacons's People

Contributors

alexwweston avatar mbarkley avatar mcupak avatar mfiume avatar rohankatyal29 avatar vrockai avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

beacon-of-beacons's Issues

Add unit tests

Not relying on a working internet connection and live beacons, faster and more fine-grained than current integration tests.

List beacons in the client

Add a page providing a list of beacons, their organizations and aggregate flag on a separate page in the client.

Filter for multiple beacons

We have e.g.:
/rest/responses?chrom=14&pos=106833421&allele=A
/rest/responses?chrom=14&pos=106833421&allele=A&beacon=amplab

We should also have something like:
/rest/responses?chrom=14&pos=106833421&allele=A&beacon=[amplab,kaviar]

Improve timeout handling

Problem description:
BoB server returns a proper HTTP status code when a request to any of the beacons queries times out. The client hangs.

Expected behaviour:
Bob checks for timeouts on a per-beacon basis - if any of the beacons doesn't respond, Bob sets its response to null and the responses of the remaining beacons in query are still delivered properly. The client handles timeouts gracefully.

Welcome page

Add an introductory/welcome page for / and /rest contexts.

Cache responses within multi-beacon queries

When querying multiple beacons at once, aggregate beacons can result into the same query being executed multiple times against the same beacon. BoB should resolve beacon dependencies before the query is executed and cache the results to avoid duplicate requests.

Beacon bundle

Implement a full beacon bundle serving data from VCF files. Probably a beacon with an embedded server and DB monitoring a directory with VCF files.

Improve documentation

Having the documentation in a single README.md is painful to maintain. The docs should be split into multiple pages and hosted separeately (GitHub wiki or GitHub pages).

Usage tracking

Fix logging on the backend so that it works with our hosting, hook up Google Analytics to the frontend.

Get rid of PHP

BoB client is currently dependant on PHP to bypass the limitations of CORS. This has to be improved.

Use allele instead of alt

Rename the query allele tag “ALT” with “ALLELE” or some more specific term. “ALT” implies alternate loci in GRCh assembly.

Dynamically generated beacon map

Generate beacon map in the client dynamically based on the beacons offered by the backend. This requires the backend to store and expose address/coordinates of the institutions as well as the number of beacons.

Migrate adapters to GA4GH-Beacon-Team

Move adapters to the beacon-quickstarts repo. This includes:

  • moving the code while removing the dependencies on bob-parent
  • removing the adapters from this repo
  • removing the adapters from the docs

Rework implementations of beacon-processors

ATM, we have a separate processor for more or less every beacon. The processors should be split to parsers, url constructors and query executors and assigned to beacon entities.

How do I see the list of end points?

I was directed to this site by a collague after noting that his project wasn't shown on the ga4gh.org site as one of the beacon endpoints. He said that it is part of the beacon of beacons end points, but I'm unable to find a list in your code or on the site, as to which end points are queried. This could be useful if I want to present this project to DECIPHER, with the hope of implementing it on the DECIPHER site! =]

Unable to set up the BoB

Order of commands
For Linux: JBOSS_HOME/bin/standalone.sh -c standalone-full.xml
mvn clean install (inside root of the beacon-of-beacon)
cd bob-rest
mvn wildfly:deploy [Runs successfully]
mvn wildfly:undeploy [Throws the following errors]
Please tell me what's wrong.

Thanks!


~/Desktop/apps/ga4g/beacon-of-beacons/bob-rest(branch:master) » mvn test -Parq-wildfly-managed -e
[INFO] Error stacktraces are turned on.
[INFO] Scanning for projects...
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building bob-rest 1.0-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[INFO]
[INFO] --- maven-resources-plugin:2.3:resources (default-resources) @ bob-rest ---
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] Copying 1 resource
[INFO]
[INFO] --- maven-compiler-plugin:2.3.2:compile (default-compile) @ bob-rest ---
[INFO] Nothing to compile - all classes are up to date
[INFO]
[INFO] --- maven-resources-plugin:2.3:testResources (default-testResources) @ bob-rest ---
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] Copying 1 resource
[INFO]
[INFO] --- maven-compiler-plugin:2.3.2:testCompile (default-testCompile) @ bob-rest ---
[INFO] Nothing to compile - all classes are up to date
[INFO]
[INFO] --- maven-surefire-plugin:2.10:test (default-test) @ bob-rest ---
[INFO] Surefire report directory: /home/shash/Desktop/apps/ga4g/beacon-of-beacons/bob-rest/target/surefire-reports


T E S T S

Running com.dnastack.bob.rest.IcgcResponseTest
log4j:WARN No appenders could be found for logger (org.jboss.logging).
log4j:WARN Please initialize the log4j system properly.
log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.
Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 0.653 sec <<< FAILURE!
Running com.dnastack.bob.rest.CuroverseBeaconizerResponseTest
Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 0.001 sec <<< FAILURE!
Running com.dnastack.bob.rest.AmpLabResponseTest
Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 0 sec <<< FAILURE!
Running com.dnastack.bob.rest.CafeVariomeResponseTest
Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 0.001 sec <<< FAILURE!
Running com.dnastack.bob.rest.BobResponseTest
Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 0.001 sec <<< FAILURE!
Running com.dnastack.bob.rest.EbiResponseTest
Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 0 sec <<< FAILURE!
Running com.dnastack.bob.rest.BroadInstituteResponseTest
Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 0 sec <<< FAILURE!
Running com.dnastack.bob.rest.NcbiResponseTest
Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 0.001 sec <<< FAILURE!
Running com.dnastack.bob.rest.KaviarResponseTest
Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 0.001 sec <<< FAILURE!
Running com.dnastack.bob.rest.UcscResponseTest
Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 0 sec <<< FAILURE!
Running com.dnastack.bob.rest.WtsiResponseTest
Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 0.001 sec <<< FAILURE!
Running com.dnastack.bob.rest.HelpTest
Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 0 sec <<< FAILURE!
Running com.dnastack.bob.rest.ItemTest
Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 0 sec <<< FAILURE!
Running com.dnastack.bob.rest.BeaconsTest
Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 0 sec <<< FAILURE!
Running com.dnastack.bob.rest.BeaconResponsesTest
Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 0 sec <<< FAILURE!

Results :

Tests in error:
com.dnastack.bob.rest.IcgcResponseTest: The server is already running! Managed containers do not support connecting to running server instances due to the possible harmful effect of connecting to the wrong server. Please stop server before running or change to another type of container.
com.dnastack.bob.rest.CuroverseBeaconizerResponseTest: Arquillian has previously been attempted initialized, but failed. See cause for previous exception
com.dnastack.bob.rest.AmpLabResponseTest: Arquillian has previously been attempted initialized, but failed. See cause for previous exception
com.dnastack.bob.rest.CafeVariomeResponseTest: Arquillian has previously been attempted initialized, but failed. See cause for previous exception
com.dnastack.bob.rest.BobResponseTest: Arquillian has previously been attempted initialized, but failed. See cause for previous exception
com.dnastack.bob.rest.EbiResponseTest: Arquillian has previously been attempted initialized, but failed. See cause for previous exception
com.dnastack.bob.rest.BroadInstituteResponseTest: Arquillian has previously been attempted initialized, but failed. See cause for previous exception
com.dnastack.bob.rest.NcbiResponseTest: Arquillian has previously been attempted initialized, but failed. See cause for previous exception
com.dnastack.bob.rest.KaviarResponseTest: Arquillian has previously been attempted initialized, but failed. See cause for previous exception
com.dnastack.bob.rest.UcscResponseTest: Arquillian has previously been attempted initialized, but failed. See cause for previous exception
com.dnastack.bob.rest.WtsiResponseTest: Arquillian has previously been attempted initialized, but failed. See cause for previous exception
com.dnastack.bob.rest.HelpTest: Arquillian has previously been attempted initialized, but failed. See cause for previous exception
com.dnastack.bob.rest.ItemTest: Arquillian has previously been attempted initialized, but failed. See cause for previous exception
com.dnastack.bob.rest.BeaconsTest: Arquillian has previously been attempted initialized, but failed. See cause for previous exception
com.dnastack.bob.rest.BeaconResponsesTest: Arquillian has previously been attempted initialized, but failed. See cause for previous exception

Tests run: 15, Failures: 0, Errors: 15, Skipped: 0

[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 3.440s
[INFO] Finished at: Sat Mar 07 01:54:12 IST 2015
[INFO] Final Memory: 19M/341M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.10:test (default-test) on project bob-rest: There are test failures.
[ERROR]
[ERROR] Please refer to /home/shash/Desktop/apps/ga4g/beacon-of-beacons/bob-rest/target/surefire-reports for the individual test results.
[ERROR] -> [Help 1]
org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.10:test (default-test) on project bob-rest: There are test failures.

Please refer to /home/shash/Desktop/apps/ga4g/beacon-of-beacons/bob-rest/target/surefire-reports for the individual test results.
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:213)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:84)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:59)
at org.apache.maven.lifecycle.internal.LifecycleStarter.singleThreadedBuild(LifecycleStarter.java:183)
at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:161)
at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:320)
at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:156)
at org.apache.maven.cli.MavenCli.execute(MavenCli.java:537)
at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:196)
at org.apache.maven.cli.MavenCli.main(MavenCli.java:141)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:289)
at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:229)
at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:415)
at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:356)
Caused by: org.apache.maven.plugin.MojoFailureException: There are test failures.

Please refer to /home/shash/Desktop/apps/ga4g/beacon-of-beacons/bob-rest/target/surefire-reports for the individual test results.
at org.apache.maven.plugin.surefire.SurefireHelper.reportExecution(SurefireHelper.java:87)
at org.apache.maven.plugin.surefire.SurefirePlugin.writeSummary(SurefirePlugin.java:641)
at org.apache.maven.plugin.surefire.SurefirePlugin.handleSummary(SurefirePlugin.java:615)
at org.apache.maven.plugin.surefire.AbstractSurefireMojo.executeAfterPreconditionsChecked(AbstractSurefireMojo.java:137)
at org.apache.maven.plugin.surefire.AbstractSurefireMojo.execute(AbstractSurefireMojo.java:98)
at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:101)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:209)
... 19 more
[ERROR]
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:

[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoFailureException

XML API occasionaly returns errors when serializing collections

There seem to be problems with moxy and resteasy-jaxb-provider on Wildfly (everything is working fine on EAP 6).

15:23:38,568 WARN [org.jboss.resteasy.core.ExceptionHandler](default task-3) Failed executing GET /chromosomes: org.jboss.resteasy.plugins.providers.jaxb.JAXBMarshalException: javax.xml.bind.JAXBException:
Exception Description: Class [com.dnastack.bob.dto.ReferenceTo] not found.

  • with linked exception:
    [Exception [EclipseLink-50047](Eclipse Persistence Services - 2.6.0.v20140809-296a69f): org.eclipse.persistence.exceptions.JAXBException
    Exception Description: Class [com.dnastack.bob.dto.ReferenceTo] not found.]
    at org.jboss.resteasy.plugins.providers.jaxb.CollectionProvider.writeTo(CollectionProvider.java:288) [resteasy-jaxb-provider-3.0.10.Final.jar:]
    at org.jboss.resteasy.core.interception.AbstractWriterInterceptorContext.writeTo(AbstractWriterInterceptorContext.java:129) [resteasy-jaxrs-3.0.10.Final.jar:]
    at org.jboss.resteasy.core.interception.ServerWriterInterceptorContext.writeTo(ServerWriterInterceptorContext.java:62) [resteasy-jaxrs-3.0.10.Final.jar:]
    at org.jboss.resteasy.core.interception.AbstractWriterInterceptorContext.proceed(AbstractWriterInterceptorContext.java:118) [resteasy-jaxrs-3.0.10.Final.jar:]
    at org.jboss.resteasy.security.doseta.DigitalSigningInterceptor.aroundWriteTo(DigitalSigningInterceptor.java:143) [resteasy-crypto-3.0.10.Final.jar:]
    at org.jboss.resteasy.core.interception.AbstractWriterInterceptorContext.proceed(AbstractWriterInterceptorContext.java:122) [resteasy-jaxrs-3.0.10.Final.jar:]
    at org.jboss.resteasy.plugins.interceptors.encoding.GZIPEncodingInterceptor.aroundWriteTo(GZIPEncodingInterceptor.java:100) [resteasy-jaxrs-3.0.10.Final.jar:]
    at org.jboss.resteasy.core.interception.AbstractWriterInterceptorContext.proceed(AbstractWriterInterceptorContext.java:122) [resteasy-jaxrs-3.0.10.Final.jar:]
    at org.jboss.resteasy.core.ServerResponseWriter.writeNomapResponse(ServerResponseWriter.java:99) [resteasy-jaxrs-3.0.10.Final.jar:]
    at org.jboss.resteasy.core.SynchronousDispatcher.writeResponse(SynchronousDispatcher.java:427) [resteasy-jaxrs-3.0.10.Final.jar:]
    at org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:376) [resteasy-jaxrs-3.0.10.Final.jar:]
    at org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:179) [resteasy-jaxrs-3.0.10.Final.jar:]
    at org.jboss.resteasy.plugins.server.servlet.ServletContainerDispatcher.service(ServletContainerDispatcher.java:220) [resteasy-jaxrs-3.0.10.Final.jar:]
    at org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:56) [resteasy-jaxrs-3.0.10.Final.jar:]
    at org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:51) [resteasy-jaxrs-3.0.10.Final.jar:]
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:790) [jboss-servlet-api_3.1_spec-1.0.0.Final.jar:1.0.0.Final]
    at io.undertow.servlet.handlers.ServletHandler.handleRequest(ServletHandler.java:85) [undertow-servlet-1.1.0.Final.jar:1.1.0.Final]
    at io.undertow.servlet.handlers.security.ServletSecurityRoleHandler.handleRequest(ServletSecurityRoleHandler.java:61) [undertow-servlet-1.1.0.Final.jar:1.1.0.Final]
    at io.undertow.servlet.handlers.ServletDispatchingHandler.handleRequest(ServletDispatchingHandler.java:36) [undertow-servlet-1.1.0.Final.jar:1.1.0.Final]
    at org.wildfly.extension.undertow.security.SecurityContextAssociationHandler.handleRequest(SecurityContextAssociationHandler.java:78)
    at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43) [undertow-core-1.1.0.Final.jar:1.1.0.Final]
    at io.undertow.servlet.handlers.security.SSLInformationAssociationHandler.handleRequest(SSLInformationAssociationHandler.java:131) [undertow-servlet-1.1.0.Final.jar:1.1.0.Final]
    at io.undertow.servlet.handlers.security.ServletAuthenticationCallHandler.handleRequest(ServletAuthenticationCallHandler.java:56) [undertow-servlet-1.1.0.Final.jar:1.1.0.Final]
    at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43) [undertow-core-1.1.0.Final.jar:1.1.0.Final]
    at io.undertow.security.handlers.AbstractConfidentialityHandler.handleRequest(AbstractConfidentialityHandler.java:45) [undertow-core-1.1.0.Final.jar:1.1.0.Final]
    at io.undertow.servlet.handlers.security.ServletConfidentialityConstraintHandler.handleRequest(ServletConfidentialityConstraintHandler.java:63) [undertow-servlet-1.1.0.Final.jar:1.1.0.Final]
    at io.undertow.security.handlers.AuthenticationMechanismsHandler.handleRequest(AuthenticationMechanismsHandler.java:58) [undertow-core-1.1.0.Final.jar:1.1.0.Final]
    at io.undertow.servlet.handlers.security.CachedAuthenticatedSessionHandler.handleRequest(CachedAuthenticatedSessionHandler.java:70) [undertow-servlet-1.1.0.Final.jar:1.1.0.Final]
    at io.undertow.security.handlers.SecurityInitialHandler.handleRequest(SecurityInitialHandler.java:76) [undertow-core-1.1.0.Final.jar:1.1.0.Final]
    at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43) [undertow-core-1.1.0.Final.jar:1.1.0.Final]
    at org.wildfly.extension.undertow.security.jacc.JACCContextIdHandler.handleRequest(JACCContextIdHandler.java:61)
    at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43) [undertow-core-1.1.0.Final.jar:1.1.0.Final]
    at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43) [undertow-core-1.1.0.Final.jar:1.1.0.Final]
    at io.undertow.servlet.handlers.ServletInitialHandler.handleFirstRequest(ServletInitialHandler.java:261) [undertow-servlet-1.1.0.Final.jar:1.1.0.Final]
    at io.undertow.servlet.handlers.ServletInitialHandler.dispatchRequest(ServletInitialHandler.java:247) [undertow-servlet-1.1.0.Final.jar:1.1.0.Final]
    at io.undertow.servlet.handlers.ServletInitialHandler.access$000(ServletInitialHandler.java:76) [undertow-servlet-1.1.0.Final.jar:1.1.0.Final]
    at io.undertow.servlet.handlers.ServletInitialHandler$1.handleRequest(ServletInitialHandler.java:166) [undertow-servlet-1.1.0.Final.jar:1.1.0.Final]
    at io.undertow.server.Connectors.executeRootHandler(Connectors.java:197) [undertow-core-1.1.0.Final.jar:1.1.0.Final]
    at io.undertow.server.HttpServerExchange$1.run(HttpServerExchange.java:759) [undertow-core-1.1.0.Final.jar:1.1.0.Final]
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [rt.jar:1.7.0_51]
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [rt.jar:1.7.0_51]
    at java.lang.Thread.run(Thread.java:744) [rt.jar:1.7.0_51]
    Caused by: javax.xml.bind.JAXBException:
    Exception Description: Class [com.dnastack.bob.dto.ReferenceTo] not found.
  • with linked exception:
    [Exception [EclipseLink-50047](Eclipse Persistence Services - 2.6.0.v20140809-296a69f): org.eclipse.persistence.exceptions.JAXBException
    Exception Description: Class [com.dnastack.bob.dto.ReferenceTo] not found.]
    at org.eclipse.persistence.jaxb.JAXBContext$TypeMappingInfoInput.createContextState(JAXBContext.java:1108) [org.eclipse.persistence.moxy-2.6.0-M3.jar:]
    at org.eclipse.persistence.jaxb.JAXBContext.(JAXBContext.java:188) [org.eclipse.persistence.moxy-2.6.0-M3.jar:]
    at org.eclipse.persistence.jaxb.JAXBContextFactory.createContext(JAXBContextFactory.java:165) [org.eclipse.persistence.moxy-2.6.0-M3.jar:]
    at org.eclipse.persistence.jaxb.JAXBContextFactory.createContext(JAXBContextFactory.java:152) [org.eclipse.persistence.moxy-2.6.0-M3.jar:]
    at org.eclipse.persistence.jaxb.JAXBContextFactory.createContext(JAXBContextFactory.java:112) [org.eclipse.persistence.moxy-2.6.0-M3.jar:]
    at org.eclipse.persistence.jaxb.JAXBContextFactory.createContext(JAXBContextFactory.java:102) [org.eclipse.persistence.moxy-2.6.0-M3.jar:]
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [rt.jar:1.7.0_51]
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) [rt.jar:1.7.0_51]
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) [rt.jar:1.7.0_51]
    at java.lang.reflect.Method.invoke(Method.java:606) [rt.jar:1.7.0_51]
    at javax.xml.bind.ContextFinder.newInstance(ContextFinder.java:211) [jboss-jaxb-api_2.2_spec-1.0.4.Final.jar:1.0.4.Final]
    at javax.xml.bind.ContextFinder.find(ContextFinder.java:349) [jboss-jaxb-api_2.2_spec-1.0.4.Final.jar:1.0.4.Final]
    at javax.xml.bind.JAXBContext.newInstance(JAXBContext.java:618) [jboss-jaxb-api_2.2_spec-1.0.4.Final.jar:1.0.4.Final]
    at org.jboss.resteasy.plugins.providers.jaxb.JAXBContextWrapper.(JAXBContextWrapper.java:88) [resteasy-jaxb-provider-3.0.10.Final.jar:]
    at org.jboss.resteasy.plugins.providers.jaxb.JAXBContextWrapper.(JAXBContextWrapper.java:113) [resteasy-jaxb-provider-3.0.10.Final.jar:]
    at org.jboss.resteasy.plugins.providers.jaxb.XmlJAXBContextFinder.createContextObject(XmlJAXBContextFinder.java:56) [resteasy-jaxb-provider-3.0.10.Final.jar:]
    at org.jboss.resteasy.plugins.providers.jaxb.AbstractJAXBContextFinder.createContext(AbstractJAXBContextFinder.java:150) [resteasy-jaxb-provider-3.0.10.Final.jar:]
    at org.jboss.resteasy.plugins.providers.jaxb.XmlJAXBContextFinder.findCacheContext(XmlJAXBContextFinder.java:72) [resteasy-jaxb-provider-3.0.10.Final.jar:]
    at org.jboss.resteasy.plugins.providers.jaxb.CollectionProvider.writeTo(CollectionProvider.java:252) [resteasy-jaxb-provider-3.0.10.Final.jar:]
    ... 41 more
    Caused by: Exception [EclipseLink-50047](Eclipse Persistence Services - 2.6.0.v20140809-296a69f): org.eclipse.persistence.exceptions.JAXBException
    Exception Description: Class [com.dnastack.bob.dto.ReferenceTo] not found.
    at org.eclipse.persistence.exceptions.JAXBException.classNotFoundException(JAXBException.java:681) [org.eclipse.persistence.core-2.6.0-M3.jar:]
    at org.eclipse.persistence.jaxb.javamodel.reflection.JavaModelImpl.getClass(JavaModelImpl.java:92) [org.eclipse.persistence.moxy-2.6.0-M3.jar:]
    at org.eclipse.persistence.jaxb.javamodel.Helper.getJavaClass(Helper.java:214) [org.eclipse.persistence.moxy-2.6.0-M3.jar:]
    at org.eclipse.persistence.jaxb.compiler.AnnotationsProcessor.processClass(AnnotationsProcessor.java:1319) [org.eclipse.persistence.moxy-2.6.0-M3.jar:]
    at org.eclipse.persistence.jaxb.compiler.AnnotationsProcessor.processAdditionalClasses(AnnotationsProcessor.java:1297) [org.eclipse.persistence.moxy-2.6.0-M3.jar:]
    at org.eclipse.persistence.jaxb.compiler.AnnotationsProcessor.processAdditionalClasses(AnnotationsProcessor.java:1176) [org.eclipse.persistence.moxy-2.6.0-M3.jar:]
    at org.eclipse.persistence.jaxb.compiler.AnnotationsProcessor.postBuildTypeInfo(AnnotationsProcessor.java:771) [org.eclipse.persistence.moxy-2.6.0-M3.jar:]
    at org.eclipse.persistence.jaxb.compiler.AnnotationsProcessor.processClassesAndProperties(AnnotationsProcessor.java:298) [org.eclipse.persistence.moxy-2.6.0-M3.jar:]
    at org.eclipse.persistence.jaxb.compiler.Generator.(Generator.java:156) [org.eclipse.persistence.moxy-2.6.0-M3.jar:]
    at org.eclipse.persistence.jaxb.JAXBContext$TypeMappingInfoInput.createContextState(JAXBContext.java:1104) [org.eclipse.persistence.moxy-2.6.0-M3.jar:]
    ... 59 more

Update DNAstack client

The current version of DNAstack client is not written nicely and needs to be refactored. It should also catch up with the functionality offered by BoB and get included in the repo.

Fix UCSC and AMPlab processors

UCSC and AMPlab tests started failing, probably because the API of those beacons changed. Update BoB to account for these changes.

Admin console

Create UI allowing the administrators to manipulate beacons (CRUD, toggle visibility, aggregate etc.).

Implement beacon storage

Currently, beacons are pretty much hard-coded. Store them in a DB so that they can be updated during runtime and the changes persist.

Add ICGC beacon

Links:

Info:
In short, the url follows the documentation on your website with the [BEACON-URL] being https://dcc.icgc.org:443/api/v1/beacon/query

With an optional ‘dataset’ parameter as well.

The beacon follows the v0.2 specification but does not yet implement wildcards/overlap as we are waiting for finalization of the spec to ensure that is implemented properly.

Also note that the only currently supported reference is GRCh37 and the beacon will respond with a JSON object (as required by the v0.2 specification).

Support for anonymous beacons

It should be possible to hide a beacon and expose its result through an aggregation point (essentially a fine-graned bob).

Example: Canadian cancer, US cancer, and UK cancer beacons all queried under a Cancer beacon.

Improve integration tests

The testsuite currently contains a few separate test classes testing different beacons, which involves a lot of redundancy and code duplication.

Normally, this is a kind of problem which could be solved by one of the following:

  • parametrized JUnit tests
  • JUnit theories
  • JUnitParams project

Unfortunaly, all of these require you to use a custom runner, which doesn't work with the Arquillian runner we're using. Figure out a way to run parametrized tests with Arquillian in client mode.

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.