///////////////////////////////////////////////////////////////
 * Licensed to the Apache Software Foundation (ASF) under one
 * or more contributor license agreements.  See the NOTICE file
 * distributed with this work for additional information
 * regarding copyright ownership.  The ASF licenses this file
 * to you under the Apache License, Version 2.0 (the
 * "License"); you may not use this file except in compliance
 * with the License.  You may obtain a copy of the License at
 *
 *   http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing,
 * software distributed under the License is distributed on an
 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
 * KIND, either express or implied.  See the License for the
 * specific language governing permissions and limitations
 * under the License.
///////////////////////////////////////////////////////////////

:leveloffset: 1

[[libraries,Libraries]]
= Libraries =

== Overview ==

The Zest™ Libraries are of varying maturity level and we try to maintain a STATUS (dev-status.xml) file indicating
how good the codebase, documentation and unit tests are for each of the libraries. This is highly subjective and
potentially different individuals will judge this differently, but at least it gives a ballpark idea of the situation
for our users.

:leveloffset: 2

include::../../../../libraries/lang-groovy/src/docs/lang-groovy.txt[]

:leveloffset: 2

include::../../../../libraries/lang-javascript/src/docs/lang-javascript.txt[]

:leveloffset: 2

include::../../../../libraries/lang-scala/src/docs/lang-scala.txt[]

:leveloffset: 2

include::../../../../libraries/alarm/src/docs/alarm.txt[]

:leveloffset: 2

include::../../../../libraries/circuitbreaker/src/docs/circuitbreaker.txt[]

:leveloffset: 2

include::../../../../libraries/constraints/src/docs/constraints.txt[]

:leveloffset: 2

include::../../../../libraries/conversion/src/docs/conversion.txt[]

:leveloffset: 2

include::../../../../libraries/eventsourcing/src/docs/eventsourcing.txt[]

:leveloffset: 2

include::../../../../libraries/eventsourcing-jdbm/src/docs/eventsourcing-jdbm.txt[]

:leveloffset: 2

include::../../../../libraries/eventsourcing-rest/src/docs/eventsourcing-rest.txt[]

:leveloffset: 2

include::../../../../libraries/fileconfig/src/docs/fileconfig.txt[]

:leveloffset: 2

include::../../../../libraries/http/src/docs/http.txt[]

:leveloffset: 2

include::../../../../libraries/invocation-cache/src/docs/invocation-cache.txt[]

:leveloffset: 2

include::../../../../libraries/jmx/src/docs/jmx.txt[]

:leveloffset: 2

include::../../../../libraries/locking/src/docs/locking.txt[]

:leveloffset: 2

include::../../../../libraries/logging/src/docs/logging.txt[]

:leveloffset: 2

include::../../../../libraries/metrics/src/docs/metrics.txt[]

:leveloffset: 2

include::../../../../libraries/osgi/src/docs/osgi.txt[]

:leveloffset: 2

include::../../../../libraries/rdf/src/docs/rdf.txt[]

:leveloffset: 2

include::../../../../libraries/rest/src/docs/rest.txt[]

:leveloffset: 2

include::../../../../libraries/rest-client/src/docs/rest-client.txt[]

:leveloffset: 2

include::../../../../libraries/rest-common/src/docs/rest-common.txt[]

:leveloffset: 2

include::../../../../libraries/rest-server/src/docs/rest-server.txt[]

:leveloffset: 2

include::../../../../libraries/scheduler/src/docs/scheduler.txt[]

:leveloffset: 2

include::../../../../libraries/servlet/src/docs/servlet.txt[]

:leveloffset: 2

include::../../../../libraries/shiro-core/src/docs/shiro.txt[]

:leveloffset: 2

include::../../../../libraries/shiro-web/src/docs/shiro-web.txt[]

:leveloffset: 2

include::../../../../libraries/spring/src/docs/spring.txt[]

:leveloffset: 2

include::../../../../libraries/sql/src/docs/sql.txt[]

:leveloffset: 2

include::../../../../libraries/uid/src/docs/uid.txt[]

:leveloffset: 2

include::../../../../libraries/uowfile/src/docs/uowfile.txt[]

:leveloffset: 2

