XApi - Core testing utilities · Some generic, non-platform specific tools for use during testing.
Group: net.wetheinter - All Dependencies
XApi - Jre Injection Implementation · All jre-specific runtime implementation for dependency injection goes in here. Note that the xapi-core-inject core library can operate without runtime support; so long as your services are correctly mapped in META-INF, you will not need runtime classpath scanning or bytecode lookup.
XApi - Dev mode tools for source generation · A fluent, functional codegen utility
XApi - Core Injection API · The core dependencies of the XApi gwt/java cross-platform library. This module contains the basic interface layer, logging, dependency injection and a slew of gwt jre emulation classes.
XApi - Gwt Injection Service · In order to implement the core XApi dependency injection in gwt, we had to swap out the injection methods themselves with magic methods that call into generated-on-the-fly provider classes.
XApi - Public services exposed by XApi core · This module contains static services and default implementations for other core services. In order to keep core dependencies as clean as possible, we avoid accessing helpers like X_Inject so users can choose when / if they inherit larger dependencies.
XApi - Collections Utilities · Core interfaces for our collections api.
XApi - IO core API · The core shared classes used by any code which needs to perform asynchronous communication.
XApi - Core reflection apis and interfaces · All of our modules, somewhere along the way, use reflective structures wrapping java objects from various apis. Gwt uses JDT AST, Jre uses actual reflection, and our injection library uses a bytecode scanner to read in .class files. In order to abstract over the various apis we wrap, we have our own interface layer to describe java metadata, so we can create tools to utilize java structure independent of any given dependencies.
XApi - Core Interfaces and Annotations · This module contains only interfaces, annotations and static service classes used throughout XApi.
XApi - Data model core API · The core shared classes used by any code which needs model support.
XApi - Jre Reflection and Classpath Scanning · This module contains a classpath scanner, and bytecode reader. It is useful in any java runtime environment, and allows java code to parse bytecode into a meta structure of classes, annotations, methods and fields. This meta structure is used throughout xapi to allow us to extend java structures in a cross-platform compliant way (exposing services and service objects so you can hack support for whatever runtime you need). It is especially useful for fast runtime injection, and as an extensible structure during codegen (which exposes mutable interfaces for our meta structure)
XApi - Jre implementation of data model · This module contains a model interface pre-processor to generate implementation classes during maven builds.
XApi - Gwt core emulation layer · All Gwt jre emulation code goes in this module, as well as any gwt-compiler overrides. xapi-gwt-api.jar must come before gwt-dev.jar on your compile classpath. A plugin is being built to automatically adjust maven runtime dependencies, but users of ant or IDEs will need to ensure the super jar comes before gwt-dev. We will petition gwt to accept our mods, but, until then, if you want bleeding edge features, you gotta do bleeding edge configuration. Code that ties directly into other modules, like java.lang.reflect for the reflection submodule, have their super-source here, and generators or other implementations in their own modules. This is to maintain consistency in what is or isn't whitelisted in XApi GWT. Some modules, like appengine, provide dependency-specific super-source in their own packages. This module is for jre, junit and core XApi services.
XApi - Classpath Scanner · A classpath scanner that uses our fork of javassist to read classes, java sources and resources off the classpath.
XApi - Core AutoUi · The core API for generating user interfaces from data models.
XApi - Basic logger interface · This module contains the basic logger interface, and a few adapter implementations. Note, to use an adapter, you will be responsible for providing dependencies; this module only uses provided scope, to avoid leaking dependencies for adapters.
XApi - Server server api · Common utilities and service abstractions for standard servlets in a plain jvm. Good enough for testing and development, and overridable to adapt to your server environment.