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:prolog-cafe',
  ],
  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:prolog-cafe',
  ],
)

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:prolog-cafe',
  ],
)

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:prolog-cafe',
  ],
  source_under_test = [':server'],
  visibility = ['//tools/eclipse:classpath'],
)
