Skip to content

Module Configuration

Aaron Coburn edited this page Oct 18, 2018 · 14 revisions

Trellis consists of various modules that are assembled into a single application. Many of these modules can be configured at runtime with Apache Tamaya; this is especially useful for injection frameworks such as CDI.

The configuration keys for each module are described here:

HTTP

  • trellis.http.baseUrl - A base URL
  • trellis.http.agent.adminusers - Users who should be considered admins
  • trellis.http.cors.alloworigin - Allowed Origin names (default is *)
  • trellis.http.cors.allowmethods - Allowed CORS methods
  • trellis.http.cors.allowheaders - Allowed CORS headers
  • trellis.http.cors.exposeheaders - Exposed CORS headers
  • trellis.http.cors.allowcredentials - Whether to allow CORS credentials
  • trellis.http.cors.maxage - The CORS max-age value
  • trellis.http.cache.maxage - The max-age for HTTP cache headers
  • trellis.http.cache.revalidate - Whether cached response must be revalidated
  • trellis.http.cache.nocache - Whether to disable cache handling
  • trellis.http.websubhub - A websubhub URL
  • trellis.http.memento.headerdates - Whether to include Memento date headers
  • trellis.http.weak.etag - Whether to use weak ETags in RDF responses

Authentication

  • trellis.auth.realm - The authentication realm to use (default=trellis)
  • trellis.auth.challenges - The challenges to use, separated by comma (e.g. Basic,Bearer)

Basic authentication

  • trellis.auth.basic.credentials - The path to a credentials file

OAuth authentication

  • trellis.auth.oauth.keystore.path - The path to a Java Keystore
  • trellis.auth.oauth.keystore.credentials - The credentials for a Java Keystore
  • trellis.auth.oauth.keystore.ids - A whitelist of IDs for the Java Keystore
  • trellis.auth.oauth.sharedsecret - A shared secret, when using HMAC signatures
  • trellis.auth.oauth.jwk - A URL for an external JWK document

WebACL

  • trellis.webac.membership.check - Whether to enforce WebAC on membership resources

File-based binary and memento storage

  • trellis.file.binary.basepath - The base file path for the binary resources
  • trellis.file.binary.hierarchy - The levels of hierarchy for storing binaries
  • trellis.file.binary.length - The length of each hierarchy level (usually 2 or 3)
  • trellis.file.memento.basepath - The base file path for the memento resources

RDF I/O processing

  • trellis.io.jsonld.profiles - A whitelist of JSON-LD profiles
  • trellis.io.jsonld.domains - A whitelist of JSON-LD domain names

Namespace processing

  • trellis.namespaces.path - The path to a namespace file

RDFa/HTML generation

  • trellis.rdfa.template - A mustache template for HTML generation
  • trellis.rdfa.css - CSS URL(s) to use with RDFa
  • trellis.rdfa.icon - an icon URL to use with RDFa
  • trellis.rdfa.js - JS URL(s) to use with RDFa

Notifications

AMQP

  • trellis.amqp.exchangename - The AMQP exchange name
  • trellis.amqp.routingkey - The AMQP routing key
  • trellis.amqp.mandatory - The AMQP mandatory property
  • trellis.amqp.immediate - The AMQP immediate property

JMS

  • trellis.jms.queue - The JMS queue name

Kafka

  • trellis.kafka.topic - The Kafka topic name

Application wrappers

Dropwizard application wrapper

  • trellis.app.initialize.root - Whether to initialize the root resource

Webapp

  • trellis.webapp.cache.enabled - Whether HTTP cache headers should be enabled
  • trellis.webapp.cors.enabled - Whether HTTP CORS headers should be enabled
  • trellis.webapp.rdf.location - The location of the RDF persistence store
Clone this wiki locally