Build blame cache as own java_library This is a first step towards properly packaging of blame cache in Gerrit server which is needed for [1]. [1] currently (PS-44) depends on the whole gitiles-servlet and this leads to a: java.lang.NoClassDefFoundError: com/google/template/soy/SoyFileSet caused by packaging the gitiles-servlet in the Gerrit core but without all of its dependencies. [1] https://gerrit-review.googlesource.com/72798 Change-Id: I9326b30962c21082b3d152eb6397ddcf767d1ce3
diff --git a/.buckconfig b/.buckconfig index adac013..7ab2a74 100644 --- a/.buckconfig +++ b/.buckconfig
@@ -1,5 +1,6 @@ [alias] all = //:all + blame-cache = //blame-cache:lib in = //:install mvn_install = //:install mvn_deploy = //:deploy
diff --git a/BUCK b/BUCK index b7015cd..a8ccb68 100644 --- a/BUCK +++ b/BUCK
@@ -1,6 +1,9 @@ include_defs('//VERSION') DEPS = [ + '//blame-cache:lib', + '//blame-cache:src', + '//blame-cache:javadoc', '//gitiles-dev:dev', '//gitiles-servlet:servlet', '//gitiles-servlet:src', @@ -21,9 +24,18 @@ url = 'gs://gerrit-maven', version = GITILES_VERSION, group = 'com.google.gitiles', - jar = {'gitiles-servlet': '//gitiles-servlet:servlet'}, - src = {'gitiles-servlet': '//gitiles-servlet:src'}, - doc = {'gitiles-servlet': '//gitiles-servlet:javadoc'}, + jar = { + 'blame-cache': '//blame-cache:lib', + 'gitiles-servlet': '//gitiles-servlet:servlet', + }, + src = { + 'blame-cache': '//blame-cache:src', + 'gitiles-servlet': '//gitiles-servlet:src', + }, + doc = { + 'blame-cache': '//blame-cache:javadoc', + 'gitiles-servlet': '//gitiles-servlet:javadoc', + }, ) def b():
diff --git a/blame-cache/BUCK b/blame-cache/BUCK new file mode 100644 index 0000000..e3a6428 --- /dev/null +++ b/blame-cache/BUCK
@@ -0,0 +1,29 @@ +SRCS = glob(['src/main/java/**/*.java']) +DEPS = [ + '//lib:guava', + '//lib/jgit:jgit', +] + +java_library( + name = 'lib', + srcs = SRCS, + deps = DEPS, + visibility = ['PUBLIC'], +) + +java_sources( + name = 'src', + srcs = SRCS, + visibility = ['//:'], +) + +java_doc( + name = 'javadoc', + title = 'Blame Cache API Documentation', + pkgs = ['com.google.gitiles.blame'], + paths = ['blame-cache/src/main/java'], + srcs = SRCS, + deps = DEPS, + visibility = ['//:'], + do_it_wrong = True, +)
diff --git a/gitiles-servlet/src/main/java/com/google/gitiles/blame/BlameCache.java b/blame-cache/src/main/java/com/google/gitiles/blame/BlameCache.java similarity index 100% rename from gitiles-servlet/src/main/java/com/google/gitiles/blame/BlameCache.java rename to blame-cache/src/main/java/com/google/gitiles/blame/BlameCache.java
diff --git a/gitiles-servlet/src/main/java/com/google/gitiles/blame/BlameCacheImpl.java b/blame-cache/src/main/java/com/google/gitiles/blame/BlameCacheImpl.java similarity index 100% rename from gitiles-servlet/src/main/java/com/google/gitiles/blame/BlameCacheImpl.java rename to blame-cache/src/main/java/com/google/gitiles/blame/BlameCacheImpl.java
diff --git a/gitiles-servlet/src/main/java/com/google/gitiles/blame/Region.java b/blame-cache/src/main/java/com/google/gitiles/blame/Region.java similarity index 100% rename from gitiles-servlet/src/main/java/com/google/gitiles/blame/Region.java rename to blame-cache/src/main/java/com/google/gitiles/blame/Region.java
diff --git a/gitiles-dev/BUCK b/gitiles-dev/BUCK index fe841a8..76775ed 100644 --- a/gitiles-dev/BUCK +++ b/gitiles-dev/BUCK
@@ -2,6 +2,7 @@ name = 'lib', srcs = glob(['src/main/java/**/*.java']), deps = [ + '//blame-cache:lib', '//gitiles-servlet:servlet', '//lib:guava', '//lib:servlet-api_3_0',
diff --git a/gitiles-servlet/BUCK b/gitiles-servlet/BUCK index 8a0de1f..81c06e2 100644 --- a/gitiles-servlet/BUCK +++ b/gitiles-servlet/BUCK
@@ -1,6 +1,7 @@ SRCS = glob(['src/main/java/**/*.java']) RSRC = glob(['src/main/resources/**/*']) DEPS = [ + '//blame-cache:lib', '//lib:commons-lang', '//lib:grappa', '//lib:gson',