diff options
-rw-r--r-- | build.gradle | 37 | ||||
-rw-r--r-- | java/src/main/java/com/google/protobuf/nano/Extension.java | 13 |
2 files changed, 50 insertions, 0 deletions
diff --git a/build.gradle b/build.gradle index 4684592..ae3424b 100644 --- a/build.gradle +++ b/build.gradle @@ -19,9 +19,11 @@ apply plugin: 'java' configurations { micro nano + lite } sourceSets { + micro { java { srcDirs = ['java/src/main/java/'] @@ -29,6 +31,31 @@ sourceSets { } } + lite { + java { + srcDirs = ['java/src/main/java/'] + exclude 'com/google/protobuf/Descriptors.java' + exclude 'com/google/protobuf/AbstractMessage.java' + exclude 'com/google/protobuf/BlockingRpcChannel.java' + exclude 'com/google/protobuf/BlockingService.java' + exclude 'com/google/protobuf/DynamicMessage.java' + exclude 'com/google/protobuf/ExtensionRegistry.java' + exclude 'com/google/protobuf/GeneratedMessage.java' + exclude 'com/google/protobuf/Message.java' + exclude 'com/google/protobuf/micro/**' + exclude 'com/google/protobuf/nano/**' + exclude 'com/google/protobuf/ProtocolMessageEnum.java' + exclude 'com/google/protobuf/RpcCallback.java' + exclude 'com/google/protobuf/RpcChannel.java' + exclude 'com/google/protobuf/RpcController.java' + exclude 'com/google/protobuf/RpcUtil.java' + exclude 'com/google/protobuf/ServiceException.java' + exclude 'com/google/protobuf/Service.java' + exclude 'com/google/protobuf/TextFormat.java' + exclude 'com/google/protobuf/UnknownFieldSet.java' + } + } + nano { java { srcDirs = [ @@ -77,8 +104,18 @@ task microJar(type: Jar) { classifier "micro" } +task liteJar(type: Jar) { + from sourceSets.lite.output + dependsOn liteClasses + baseName "libprotobuf" + appendix "java" + version "2.3" + classifier "lite" +} + artifacts { micro microJar nano nanoJar + lite liteJar } diff --git a/java/src/main/java/com/google/protobuf/nano/Extension.java b/java/src/main/java/com/google/protobuf/nano/Extension.java index b4d3eb0..6e2202e 100644 --- a/java/src/main/java/com/google/protobuf/nano/Extension.java +++ b/java/src/main/java/com/google/protobuf/nano/Extension.java @@ -74,6 +74,19 @@ public class Extension<M extends ExtendableMessageNano<M>, T> { public static final int TYPE_SINT32 = 17; public static final int TYPE_SINT64 = 18; + /** + * Creates an {@code Extension} of the given message type and tag number. + * Should be used by the generated code only. + * + * @param type {@link #TYPE_MESSAGE} or {@link #TYPE_GROUP} + * @deprecated use {@link #createMessageTyped(int, Class, long)} instead. + */ + @Deprecated + public static <M extends ExtendableMessageNano<M>, T extends MessageNano> + Extension<M, T> createMessageTyped(int type, Class<T> clazz, int tag) { + return new Extension<M, T>(type, clazz, tag, false); + } + // Note: these create...() methods take a long for the tag parameter, // because tags are represented as unsigned ints, and these values exist // in generated code as long values. However, they can fit in 32-bits, so |