Skip to content
Snippets Groups Projects
Commit fcc9ec12 authored by cmaeder's avatar cmaeder
Browse files

separated static content server

parent 02be9048
Branches
No related tags found
No related merge requests found
import org.apache.camel.CamelContext
import org.apache.camel.component.sql.SqlComponent import org.apache.camel.component.sql.SqlComponent
import org.apache.camel.impl.DefaultCamelContext import org.apache.camel.impl.DefaultCamelContext
import org.sqlite.SQLiteDataSource import org.sqlite.SQLiteDataSource
...@@ -7,7 +6,7 @@ object Table { ...@@ -7,7 +6,7 @@ object Table {
val columns = List("fileName", "errType", "shortMsg", "errLevel", "longMsg") val columns = List("fileName", "errType", "shortMsg", "errLevel", "longMsg")
val name = "errors" val name = "errors"
def initArgs(args: scala.Array[String]): (CamelContext, String) = { def initArgs(args: scala.Array[String]): (DefaultCamelContext, String) = {
val sqlComponent: SqlComponent = new SqlComponent() val sqlComponent: SqlComponent = new SqlComponent()
val ds: SQLiteDataSource = new SQLiteDataSource() val ds: SQLiteDataSource = new SQLiteDataSource()
val name = if (args.isEmpty) Table.name else args(0) val name = if (args.isEmpty) Table.name else args(0)
...@@ -15,7 +14,7 @@ object Table { ...@@ -15,7 +14,7 @@ object Table {
ds.setDatabaseName(dbName) ds.setDatabaseName(dbName)
ds.setUrl("jdbc:sqlite:" + dbName) ds.setUrl("jdbc:sqlite:" + dbName)
sqlComponent.setDataSource(ds) sqlComponent.setDataSource(ds)
val context: CamelContext = new DefaultCamelContext() val context = new DefaultCamelContext()
context.addComponent("db", sqlComponent) context.addComponent("db", sqlComponent)
val dir = if (args.length > 1) args(1) else System.getProperty("user.dir") val dir = if (args.length > 1) args(1) else System.getProperty("user.dir")
(context, dir) (context, dir)
......
import org.apache.camel.component.sql.SqlComponent import org.apache.camel.Exchange
import org.apache.camel.impl.DefaultCamelContext
import org.apache.camel.scala.dsl.builder.RouteBuilder import org.apache.camel.scala.dsl.builder.RouteBuilder
import org.apache.camel.{CamelContext, Exchange} import org.apache.camel.util.jndi.JndiContext
import org.sqlite.SQLiteDataSource import org.eclipse.jetty.server.handler.ResourceHandler
import scala.collection.{JavaConversions, mutable} import scala.collection.{JavaConversions, mutable}
...@@ -22,36 +21,21 @@ object CamelTest { ...@@ -22,36 +21,21 @@ object CamelTest {
exchange.out = JavaConversions.asJavaDictionary(result) exchange.out = JavaConversions.asJavaDictionary(result)
} }
"jetty:http://localhost:8383/sally/test" process myProcessor to "freemarker:file:src/main/resources/index.html" "jetty:http://localhost:8383/sally" process myProcessor to "freemarker:file:src/main/resource/index.html"
"jetty:http://localhost:8383/sally/test/insert" --> "log:a?showHeaders=true" "jetty:http://localhost:8383/sally/test/insert" --> "log:a?showHeaders=true"
"jetty:http://localhost:8383/static?matchOnUriPrefix=true&handlers=#staticHandler" -->
"log:b"
"direct:insertValues" --> "db:insert into person values(1, 'leo')" --> "db:insert into person values(2, 'yui')"
"direct:createTables" --> "db:drop table if exists person" --> "db:create table person (id integer, name string)"
"direct:listValues" --> "db:select count(*) from person" --> "log:a"
} }
def main(args: scala.Array[String]) { def main(args: scala.Array[String]) {
val (context, _) = Table.initArgs(args)
// init SQLite connection val resHandler = new ResourceHandler()
// Class.forName("org.sqlite.JDBC") resHandler.setResourceBase("src/main/resource")
val sqlComponent: SqlComponent = new SqlComponent() val jdni = new JndiContext()
val ds: SQLiteDataSource = new SQLiteDataSource() jdni.bind("staticHandler", resHandler)
ds.setDatabaseName("test.db") context.setJndiContext(jdni)
ds.setUrl("jdbc:sqlite:test.db") context.addRoutes(new MyRouteBuilder())
sqlComponent.setDataSource(ds)
val errStore = new SQLiteStore()
val context: CamelContext = new DefaultCamelContext()
context.addRoutes(errStore)
context.addComponent("db", sqlComponent)
context.start() context.start()
errStore.initTable()
val pa = new ParseXML(errStore)
pa.parseDir("/local/maeder/tptp/Distribution/errors")
errStore.queryValues(false, "skipped", "shortMsg")
errStore.queryValues(false, "", "errType")
errStore.queryValues(true, "LocalError", "errType")
} }
} }
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment