Fork me on GitHub

Usage

The tool allows to automatically generate java boilerplate code from Apache Cassandra 2.1+ schema.

Basic Usage

Before you start it is best to add jcql as a dependency in your pom.

<project>
  ...
  <dependencies>
    ...
    <dependency>
      <groupId>com.trebogeer.jcql</groupId>
      <artifactId>jcql</artifactId>
      <version>0.9.0-SNAPSHOT</version>
    </dependency>
    ...
  </dependencies>
  ...
  <build>
    ...
    <plugins>
      ...
      <plugin>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>exec-maven-plugin</artifactId>
        <version>1.3.2</version>
        <executions>
          <execution>
            <id>gen-code</id>
            <phase>generate-sources</phase>
            <goals>
              <goal>java</goal>
            </goals>
          </execution>
        </executions>
        <configuration>
          <mainClass>com.trebogeer.jcql.JCQLMain</mainClass>
          <arguments>
            <!--target generated source directory-->
            <argument>-gsd</argument>
            <argument>/home/dimav/j-cql/jcql/target/autogen/</argument>
            <!--cassandra host to connect to -->
            <argument>-h</argument>
            <argument>localhost</argument>
            <!--cassandra port to connect to-->
            <argument>-P</argument>
            <agrument>${cs.ntp}</agrument>
            <!--cassandra keyspace -->
            <argument>-k</argument>
            <argument>${cs.test.ks}</argument>
            <!---debug?-->
            <argument>-d</argument>
            <argument>n</argument>
            <!--print info during code generation-->
            <argument>-i</argument>
            <argument>n</argument>
            <!-- generate toString method -->
            <argument>-ts</argument>
            <argument>y</argument>
            <!--cql statements to generate data access layer of -->
            <!--<argument>-cql</argument>-->
            <!--<argument>/home/dimav/j-cql/jcql/src/test/resources/cql.yml</argument>-->
          </arguments>
        </configuration>
      </plugin>
      ...
    </plugins>
    ...
  </build>
  ...
</project>