CONSTANTS_SRC = [
  'src/main/java/com/google/gerrit/server/documentation/Constants.java',
]

SRCS = glob(
  ['src/main/java/**/*.java'],
  excludes = CONSTANTS_SRC,
)
RESOURCES =  glob(['src/main/resources/**/*'])

java_library(
  name = 'constants',
  srcs = CONSTANTS_SRC,
  visibility = ['PUBLIC'],
)

# TODO(sop) break up gerrit-server java_library(), its too big
java_library(
  name = 'server',
  srcs = SRCS,
  resources = RESOURCES,
  deps = [
    ':constants',
    '//gerrit-antlr:query_exception',
    '//gerrit-antlr:query_parser',
    '//gerrit-common:annotations',
    '//gerrit-common:server',
    '//gerrit-extension-api:api',
    '//gerrit-patch-commonsnet:commons-net',
    '//gerrit-patch-jgit:server',
    '//gerrit-prettify:server',
    '//gerrit-reviewdb:server',
    '//gerrit-util-cli:cli',
    '//gerrit-util-ssl:ssl',
    '//lib:args4j',
    '//lib:automaton',
    '//lib:gson',
    '//lib:guava',
    '//lib:gwtjsonrpc',
    '//lib:gwtorm',
    '//lib:jsch',
    '//lib:juniversalchardet',
    '//lib:mime-util',
    '//lib:parboiled-core',
    '//lib:pegdown',
    '//lib:protobuf',
    '//lib:velocity',
    '//lib/antlr:java_runtime',
    '//lib/auto:auto-value',
    '//lib/commons:codec',
    '//lib/commons:dbcp',
    '//lib/commons:lang',
    '//lib/commons:net',
    '//lib/commons:validator',
    '//lib/guice:guice',
    '//lib/guice:guice-assistedinject',
    '//lib/guice:guice-servlet',
    '//lib/jgit:jgit',
    '//lib/jgit:jgit-archive',
    '//lib/joda:joda-time',
    '//lib/log:api',
    '//lib/log:log4j',
    '//lib/lucene:analyzers-common',
    '//lib/lucene:core',
    '//lib/lucene:query-parser',
    '//lib/ow2:ow2-asm',
    '//lib/ow2:ow2-asm-tree',
    '//lib/ow2:ow2-asm-util',
    '//lib/prolog:runtime',
  ],
  provided_deps = [
    '//lib:servlet-api-3_1',
    '//lib/bouncycastle:bcprov',
    '//lib/bouncycastle:bcpg',
    '//lib/bouncycastle:bcpkix',
  ],
  visibility = ['PUBLIC'],
)

java_sources(
  name = 'server-src',
  srcs = SRCS + RESOURCES,
  visibility = ['PUBLIC'],
)

TESTUTIL = glob([
  'src/test/java/com/google/gerrit/testutil/**/*.java',
  'src/test/java/com/google/gerrit/server/project/Util.java',
  ])
java_library(
  name = 'testutil',
  srcs = TESTUTIL,
  deps = [
    ':server',
    '//gerrit-common:server',
    '//gerrit-cache-h2:cache-h2',
    '//gerrit-lucene:lucene',
    '//gerrit-reviewdb:server',
    '//lib:guava',
    '//lib:gwtorm',
    '//lib:h2',
    '//lib:junit',
    '//lib/guice:guice',
    '//lib/guice:guice-servlet',
    '//lib/jgit:jgit',
    '//lib/jgit:junit',
    '//lib/log:impl_log4j',
    '//lib/log:log4j',
  ],
  exported_deps = [
    '//lib/easymock:easymock',
    '//lib/powermock:powermock-api-easymock',
    '//lib/powermock:powermock-api-support',
    '//lib/powermock:powermock-core',
    '//lib/powermock:powermock-module-junit4',
    '//lib/powermock:powermock-module-junit4-common',
  ],
  visibility = ['PUBLIC'],
)

PROLOG_TEST_CASE = [
  'src/test/java/com/google/gerrit/rules/PrologTestCase.java',
]
PROLOG_TESTS = glob(
  ['src/test/java/com/google/gerrit/rules/**/*.java'],
  excludes = PROLOG_TEST_CASE,
)

java_library(
  name = 'prolog_test_case',
  srcs = PROLOG_TEST_CASE,
  deps = [
    ':server',
    '//gerrit-common:server',
    '//lib:junit',
    '//lib/guice:guice',
    '//lib/prolog:runtime',
  ],
)

java_test(
  name = 'prolog_tests',
  srcs = PROLOG_TESTS,
  resources = glob(['src/test/resources/com/google/gerrit/rules/**/*']),
  deps = [
    ':prolog_test_case',
    ':server',
    ':testutil',
    '//gerrit-common:server',
    '//gerrit-reviewdb:server',
    '//gerrit-server/src/main/prolog:common',
    '//lib:guava',
    '//lib:gwtorm',
    '//lib:junit',
    '//lib:truth',
    '//lib/jgit:jgit',
    '//lib/guice:guice',
    '//lib/prolog:runtime',
  ],
)

QUERY_TESTS = glob(
  ['src/test/java/com/google/gerrit/server/query/**/*.java'],
)

java_test(
  name = 'query_tests',
  srcs = QUERY_TESTS,
  deps = [
    ':server',
    ':testutil',
    '//gerrit-antlr:query_exception',
    '//gerrit-antlr:query_parser',
    '//gerrit-common:annotations',
    '//gerrit-common:server',
    '//gerrit-extension-api:api',
    '//gerrit-reviewdb:server',
    '//gerrit-server/src/main/prolog:common',
    '//lib:guava',
    '//lib:gwtorm',
    '//lib:junit',
    '//lib:truth',
    '//lib/antlr:java_runtime',
    '//lib/guice:guice',
    '//lib/jgit:jgit',
    '//lib/jgit:junit',
    '//lib/joda:joda-time',
  ],
  source_under_test = [':server'],
)

java_test(
  name = 'server_tests',
  labels = ['server'],
  srcs = glob(
    ['src/test/java/**/*.java'],
    excludes = TESTUTIL + PROLOG_TESTS + PROLOG_TEST_CASE + QUERY_TESTS
  ),
  deps = [
    ':server',
    ':testutil',
    '//gerrit-antlr:query_exception',
    '//gerrit-common:annotations',
    '//gerrit-common:server',
    '//gerrit-extension-api:api',
    '//gerrit-reviewdb:server',
    '//gerrit-server/src/main/prolog:common',
    '//lib:args4j',
    '//lib:guava',
    '//lib:gwtorm',
    '//lib:junit',
    '//lib:truth',
    '//lib/guice:guice',
    '//lib/guice:guice-assistedinject',
    '//lib/jgit:jgit',
    '//lib/jgit:junit',
    '//lib/joda:joda-time',
    '//lib:parboiled-core',
    '//lib:parboiled-java',
    '//lib/prolog:runtime',
  ],
  source_under_test = [':server'],
  visibility = ['//tools/eclipse:classpath'],
)
