/*
 *  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.
 */

apply plugin: 'polygene-settings'

rootProject.name = 'polygene-java'

include 'core:api',
        'core:spi',
        'core:testsupport',
        'core:bootstrap',
        'core:runtime',
        'libraries:alarm',
        'libraries:circuitbreaker',
        'libraries:constraints',
        'libraries:fileconfig',
        'libraries:http',
        'libraries:invocation-cache',
        'libraries:jmx',
        'libraries:locking',
        'libraries:logging',
        'libraries:osgi',
        'libraries:rdf',
        'libraries:rest',
        'libraries:rest-client',
        'libraries:rest-common',
        'libraries:rest-server',
        'libraries:restlet',
        'libraries:scripting',
        'libraries:servlet',
        'libraries:shiro-core',
        'libraries:shiro-web',
        'libraries:spring',
        'libraries:sql',
        'libraries:sql-bonecp',
        'libraries:sql-dbcp',
        'libraries:sql-generator',
        'libraries:sql-liquibase',
        'libraries:uid',
        'libraries:uowfile',
        'extensions:cache-ehcache',
        'extensions:cache-memcache',
        'extensions:entitystore-cassandra',
        'extensions:entitystore-file',
        'extensions:entitystore-geode',
        'extensions:entitystore-hazelcast',
        'extensions:entitystore-jclouds',
        'extensions:entitystore-jdbm',
        'extensions:entitystore-leveldb',
        'extensions:entitystore-memory',
        'extensions:entitystore-mongodb',
        'extensions:entitystore-preferences',
        'extensions:entitystore-redis',
        'extensions:entitystore-riak',
        'extensions:entitystore-sql',
        'extensions:indexing-elasticsearch',
        'extensions:indexing-rdf',
        'extensions:indexing-solr',
        'extensions:indexing-sql',
        'extensions:metrics-codahale',
        'extensions:migration',
        'extensions:reindexer',
        'extensions:serialization-javaxjson',
        'extensions:serialization-javaxxml',
        'extensions:serialization-messagepack',
        'tools:model-detail',
        'tools:envisage',
        'tools:generator-polygene',
//        'tools:qidea',
        'tests:regression',
        'tests:performance',
        'tutorials:cargo',
        'tutorials:composites',
        'tutorials:hello',
        'tutorials:introduction',
        'tutorials:introduction:twominutes',
        'tutorials:introduction:tenminutes',
        'tutorials:introduction:thirtyminutes',
//        'tutorials:introduction:twohours',
        'tutorials:services',
        'samples:dci',
        'samples:forum',
        'samples:rental',
        'samples:sql-support',
        'samples:swing'

include 'internals:testsupport-internal'

include 'manual', 'reports', 'distributions', 'release'
