
#  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.
#

#------------------------------------------------------------------------------#
# ***** DO  NOT edit blocks.properties yourself! ********                      #
# This file is generated from gump.xml - to keep it in sync when that file is  #
# modified, use the generate-blocks.properties build target.                   #
#------------------------------------------------------------------------------#

#------------------------------------------------------------------------------#
#                             Cocoon Blocks                                    #
#------------------------------------------------------------------------------#

# Remove blocks from your cocoon distribution by setting the corresponding
# include property to true or false. The blocks are included by default, i.e. if
# no property was set.

# NOTE: Don't modify this file directly but make a copy named
# 'local.blocks.properties' and modify that. The build system will first load
# 'local.blocks.properties' and properties are immutable in Ant.

# For most cases it is enough that you exclude all blocks and include only those
# few you want, example:
# exclude.all.blocks=true
# include.block.forms=true
# include.block.template=true

# The opposite is also allowed:
# include.all.blocks=true
# exclude.block.scratchpad=true

# If there is a conflict on the same level of granularity:
# include.block.template=true vs. exclude.block.template=true, 
# include.all.blocks=true vs. exclude.all.blocks=true
# it is always resolved in favour of include.* properties. 

# NOTE: "[dependency]" indicates blocks that are required by other blocks.
# Disabling batik, for example, will result in a RuntimeException when using
# fop. Dependencies only needed for the block's samples are marked explicitely.
# This latter information was introduced only short time ago, so do not expect
# it to be complete.

# NOTE: (to Cocoon committers): blocks.properties is generated from gump.xml
# using "build generate-blocks.properties". Any changes to blocks definitions
# must be made in gump.xml, not here.

# All blocks -------------------------------------------------------------------

# Use this property to exclude all blocks at once
# exclude.all.blocks=true

# Use this property to include all blocks at once
# include.all.blocks=true


# Stable blocks ----------------------------------------------------------------

# Stable blocks are those that can be considered ready for production and
# will contain components and API that will remain stable and where
# developers are committed to back compatibility. In short, stuff that you
# can depend on.

#-----[dependency]: "authentication-fw" depends on "session-fw".
#-----[dependency]: "authentication-fw" is needed by "portal", "portal-fw".
#include.block.authentication-fw=false
#-----[dependency]: "batik" is needed by "fop", "tour".
#include.block.batik=false
#include.block.bsf=false
#include.block.chaperon=false
#-----[dependency]: "databases" depends on "xsp".
#-----[dependency]: "databases" is needed by "hsqldb", "jms", "ojb", "petstore", "repository", "xmldb".
#include.block.databases=false
#-----[dependency]: "fop" depends on "batik", "xsp" (for samples).
#-----[dependency]: "fop" is needed by "tour".
#include.block.fop=false
#-----[dependency]: "forms" depends on "ajax", "template" (for samples).
#-----[dependency]: "forms" is needed by "apples", "javaflow", "ojb", "petstore", "portal", "querybean", "tour".
#include.block.forms=false
#-----[dependency]: "hsqldb" depends on "databases".
#-----[dependency]: "hsqldb" is needed by "jms", "ojb", "petstore".
#include.block.hsqldb=false
#include.block.html=false
#-----[dependency]: "itext" depends on "xsp" (for samples).
#include.block.itext=false
#include.block.jfor=false
#include.block.jsp=false
#-----[dependency]: "linkrewriter" depends on "xsp".
#include.block.linkrewriter=false
#-----[dependency]: "lucene" is needed by "querybean".
#include.block.lucene=false
#include.block.midi=false
#include.block.naming=false
#-----[dependency]: "ojb" depends on "databases" (for samples), "forms" (for samples), "hsqldb" (for samples), "xsp" (for samples).
#-----[dependency]: "ojb" is needed by "javaflow", "portal", "querybean".
#include.block.ojb=false
#include.block.paranoid=false
#include.block.poi=false
#-----[dependency]: "portal" depends on "auth", "authentication-fw", "cron", "forms", "ojb", "session-fw".
#-----[dependency]: "portal" is needed by "faces".
#include.block.portal=false
#-----[dependency]: "profiler" depends on "auth".
#include.block.profiler=false
#-----[dependency]: "python" depends on "xsp".
#include.block.python=false
#-----[dependency]: "session-fw" depends on "xsp".
#-----[dependency]: "session-fw" is needed by "authentication-fw", "portal", "portal-fw".
#include.block.session-fw=false
#-----[dependency]: "velocity" is needed by "petstore".
#include.block.velocity=false
#include.block.web3=false
#-----[dependency]: "xmldb" depends on "databases".
#include.block.xmldb=false
#-----[dependency]: "xsp" is needed by "axis", "databases", "fop", "itext", "linkrewriter", "ojb", "python", "session-fw", "woody".
#include.block.xsp=false

# Deprecated blocks ------------------------------------------------------------

# Although some of these blocks may have been stable, they are now deprecated
# in favour of other blocks and therefore are excluded by default from the build.
# For including one of them you have to set the exclude property into comment in
# blocks.properties.

include.block.php=false
#-----[dependency]: "portal-fw" depends on "authentication-fw", "session-fw".
include.block.portal-fw=false
include.block.swf=false
#-----[dependency]: "woody" depends on "xsp" (for samples).
include.block.woody=false

# Unstable blocks --------------------------------------------------------------

# Unstable blocks are currently under development and do not guarantee that the
# contracts they expose (API, xml schema, properties, behavior) will remain
# constant in time. Developers are not committed to back-compatibility just yet.
# This doesn't necessarily mean the blocks implementation is unstable or
# the code can't be trusted for production, but use with care and watch
# its development as things might change over time before they are marked
# stable.

#-----[dependency]: "ajax" depends on "template" (for samples).
#-----[dependency]: "ajax" is needed by "forms".
#include.block.ajax=false
#-----[dependency]: "apples" depends on "forms" (for samples).
#include.block.apples=false
#-----[dependency]: "asciiart" is needed by "mail".
#include.block.asciiart=false
#-----[dependency]: "auth" is needed by "portal", "profiler".
#include.block.auth=false
#-----[dependency]: "axis" depends on "xsp" (for samples).
#include.block.axis=false
#-----[dependency]: "captcha" depends on "template" (for samples).
#include.block.captcha=false
#-----[dependency]: "cron" is needed by "jms", "portal".
#include.block.cron=false
#include.block.deli=false
#-----[dependency]: "eventcache" depends on "jms".
#-----[dependency]: "eventcache" is needed by "repository", "webdav".
#include.block.eventcache=false
#-----[dependency]: "faces" depends on "portal", "taglib".
#include.block.faces=false
#include.block.imageop=false
#-----[dependency]: "javaflow" depends on "forms", "ojb".
#include.block.javaflow=false
include.block.jcr=false
#-----[dependency]: "jms" depends on "cron", "databases" (for samples), "hsqldb".
#-----[dependency]: "jms" is needed by "eventcache", "slide".
#include.block.jms=false
#include.block.linotype=false
#-----[dependency]: "mail" depends on "asciiart" (for samples).
#include.block.mail=false
#-----[dependency]: "petstore" depends on "databases", "forms", "hsqldb", "velocity".
#include.block.petstore=false
#include.block.proxy=false
#include.block.qdox=false
#-----[dependency]: "querybean" depends on "forms" (for samples), "lucene", "ojb".
#include.block.querybean=false
#-----[dependency]: "repository" depends on "databases", "eventcache".
#-----[dependency]: "repository" is needed by "slide", "webdav".
#include.block.repository=false
#include.block.serializers=false
#-----[dependency]: "slide" depends on "jms", "repository".
#include.block.slide=false
#-----[dependency]: "slop" is needed by "tour".
#include.block.slop=false
#include.block.stx=false
#-----[dependency]: "taglib" is needed by "faces".
#include.block.taglib=false
#-----[dependency]: "template" is needed by "ajax", "captcha", "forms".
#include.block.template=false
#-----[dependency]: "tour" depends on "batik", "fop", "forms", "slop".
#include.block.tour=false
#include.block.validation=false
#-----[dependency]: "webdav" depends on "eventcache", "repository".
#include.block.webdav=false
#include.block.xsltal=false
