Skip to content

Commit

Permalink
add a second example
Browse files Browse the repository at this point in the history
  • Loading branch information
gavinking committed May 14, 2017
1 parent ccf343a commit b7cad2f
Show file tree
Hide file tree
Showing 10 changed files with 87 additions and 7 deletions.
3 changes: 1 addition & 2 deletions .gitignore
@@ -1,6 +1,5 @@
/.exploded/
/bin/
/eg.jooby-1.0.0.cas
/eg.jooby-1.0.0.jar
/eg.jooby*-1.0.0.*
.DS_Store
/modules/
21 changes: 18 additions & 3 deletions README.md
Expand Up @@ -27,16 +27,31 @@ Ceylon IDE, or, in this directory, type:

To run the Hello World example, in this directory, type:

./ceylonb run eg.jooby
./ceylonb run eg.jooby.simple

And go to <http://localhost:8080>.

To run the REST example, in this directory, type:

./ceylonb run eg.jooby.rest

And go to <http://localhost:8080/mvc/greeting/Trompon>.

## Assembling and running a fat jar

To assemble a "fat" jar, in this directory, type:

./ceylonb fat-jar --force eg.jooby
./ceylonb fat-jar --force eg.jooby.simple

Or:

./ceylonb fat-jar --force eg.jooby.rest

Then, to run the resulting jar with `java`, type:

java -jar eg.jooby-1.0.0.jar
java -jar eg.jooby.simple-1.0.0.jar

Or:

java -jar eg.jooby.rest-1.0.0.jar

7 changes: 7 additions & 0 deletions ceylon-examples-jooby.iml
Expand Up @@ -26,6 +26,12 @@
<orderEntry type="library" scope="PROVIDED" name="Ceylon: ceylon.language/1.3.3-SNAPSHOT" level="project" />
<orderEntry type="library" scope="PROVIDED" name="Ceylon: ch.qos.logback:logback-classic/1.1.7" level="project" />
<orderEntry type="library" scope="PROVIDED" name="Ceylon: ch.qos.logback:logback-core/1.1.7" level="project" />
<orderEntry type="library" scope="PROVIDED" name="Ceylon: com.fasterxml.jackson.core:jackson-annotations/2.8.0" level="project" />
<orderEntry type="library" scope="PROVIDED" name="Ceylon: com.fasterxml.jackson.core:jackson-core/2.8.3" level="project" />
<orderEntry type="library" scope="PROVIDED" name="Ceylon: com.fasterxml.jackson.core:jackson-databind/2.8.3" level="project" />
<orderEntry type="library" scope="PROVIDED" name="Ceylon: com.fasterxml.jackson.datatype:jackson-datatype-jdk8/2.8.3" level="project" />
<orderEntry type="library" scope="PROVIDED" name="Ceylon: com.fasterxml.jackson.datatype:jackson-datatype-jsr310/2.8.3" level="project" />
<orderEntry type="library" scope="PROVIDED" name="Ceylon: com.fasterxml.jackson.module:jackson-module-parameter-names/2.8.3" level="project" />
<orderEntry type="library" scope="PROVIDED" name="Ceylon: com.google.guava:guava/19.0" level="project" />
<orderEntry type="library" scope="PROVIDED" name="Ceylon: com.google.inject.extensions:guice-multibindings/4.1.0" level="project" />
<orderEntry type="library" scope="PROVIDED" name="Ceylon: com.google.inject:guice/4.1.0" level="project" />
Expand All @@ -37,6 +43,7 @@
<orderEntry type="library" scope="PROVIDED" name="Ceylon: org.jboss.logging:jboss-logging/3.2.1.Final" level="project" />
<orderEntry type="library" scope="PROVIDED" name="Ceylon: org.jboss.xnio:xnio-api/3.3.6.Final" level="project" />
<orderEntry type="library" scope="PROVIDED" name="Ceylon: org.jooby:jooby/1.1.0" level="project" />
<orderEntry type="library" scope="PROVIDED" name="Ceylon: org.jooby:jooby-jackson/1.1.0" level="project" />
<orderEntry type="library" scope="PROVIDED" name="Ceylon: org.jooby:jooby-undertow/1.1.0" level="project" />
<orderEntry type="library" scope="PROVIDED" name="Ceylon: org.slf4j:slf4j-api/1.7.21" level="project" />
</component>
Expand Down
1 change: 0 additions & 1 deletion source/eg/jooby/package.ceylon

This file was deleted.

6 changes: 6 additions & 0 deletions source/eg/jooby/rest/module.ceylon
@@ -0,0 +1,6 @@
native ("jvm")
module eg.jooby.rest "1.0.0" {
shared import maven:org.jooby:"jooby-undertow" "1.1.0";
import maven:org.jooby:"jooby-jackson" "1.1.0";
import java.base "8";
}
3 changes: 3 additions & 0 deletions source/eg/jooby/rest/package.ceylon
@@ -0,0 +1,3 @@
"Default documentation for package `eg.jooby.rest`."

shared package eg.jooby.rest;
50 changes: 50 additions & 0 deletions source/eg/jooby/rest/run.ceylon
@@ -0,0 +1,50 @@
import java.util.concurrent.atomic {
AtomicInteger
}

import org.jooby {
Jooby
}
import org.jooby.json {
Jackson
}
import org.jooby.mvc {
path,
get
}

shared void run() => Jooby.run(App, *process.arguments);

class App() extends Jooby() {
use(Jackson());
use(`Greetings`);
}

path { "/mvc" }
shared class Greetings() {

get path { "/greeting" }
shared Greeting helloWorld() => Greeting();

get path { "/greeting/:name" }
shared Greeting hello(String name) => Greeting(name);

}

shared class Greeting {

static value idgen = AtomicInteger();

shared Integer id;
shared String name;

shared String salutation = "Hello";

shared new (String name = "World") {
this.id = idgen.incrementAndGet();
this.name = name;
}

string => name;

}
@@ -1,5 +1,5 @@
native ("jvm")
module eg.jooby "1.0.0" {
module eg.jooby.simple "1.0.0" {
import maven:org.jooby:"jooby-undertow" "1.1.0";
import ceylon.html "1.3.2";
}
1 change: 1 addition & 0 deletions source/eg/jooby/simple/package.ceylon
@@ -0,0 +1 @@
shared package eg.jooby.simple;
File renamed without changes.

0 comments on commit b7cad2f

Please sign in to comment.