# MOA

CapyMOA calls into the Java library [Massive Online Analysis (MOA)](https://moa.cms.waikato.ac.nz/) using [JPype](https://jpype.readthedocs.io/).
This section explains aspects of our integration with MOA and JPype.
It is intended for contributors, but the [MOA integration guide](moa_integration.md) may also be helpful for advanced users.

* [Implement a method in Java and use it in Python](moa_integration.md)
  * [Approach 1: build the whole MOA project](moa_integration.md#approach-1-build-the-whole-moa-project)
  * [Approach 2: put a single class on the classpath](moa_integration.md#approach-2-put-a-single-class-on-the-classpath)
  * [Wrap it in Python and run it](moa_integration.md#wrap-it-in-python-and-run-it)
* [Update MOA](update_moa.md)
  * [Refreshing the `moa.jar`](update_moa.md#refreshing-the-moa-jar)
  * [Changing Project MOA Version](update_moa.md#changing-project-moa-version)
