diff options
-rw-r--r-- | build.gradle | 44 | ||||
-rw-r--r-- | java/src/main/java/com/google/protobuf/nano/Extension.java | 13 |
2 files changed, 57 insertions, 0 deletions
diff --git a/build.gradle b/build.gradle index 4684592..7aa8ac2 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,38 @@ sourceSets { } } + lite { + java { + srcDirs = ['java/src/main/java/'] + include 'com/google/protobuf/UninitializedMessageException.java' + include 'com/google/protobuf/MessageLite.java' + include 'com/google/protobuf/InvalidProtocolBufferException.java' + include 'com/google/protobuf/CodedOutputStream.java' + include 'com/google/protobuf/ByteString.java' + include 'com/google/protobuf/CodedInputStream.java' + include 'com/google/protobuf/ExtensionRegistryLite.java' + include 'com/google/protobuf/AbstractMessageLite.java' + include 'com/google/protobuf/AbstractParser.java' + include 'com/google/protobuf/FieldSet.java' + include 'com/google/protobuf/Internal.java' + include 'com/google/protobuf/WireFormat.java' + include 'com/google/protobuf/GeneratedMessageLite.java' + include 'com/google/protobuf/BoundedByteString.java' + include 'com/google/protobuf/LazyField.java' + include 'com/google/protobuf/LazyFieldLite.java' + include 'com/google/protobuf/LazyStringList.java' + include 'com/google/protobuf/LazyStringArrayList.java' + include 'com/google/protobuf/UnmodifiableLazyStringList.java' + include 'com/google/protobuf/LiteralByteString.java' + include 'com/google/protobuf/MessageLiteOrBuilder.java' + include 'com/google/protobuf/Parser.java' + include 'com/google/protobuf/ProtocolStringList.java' + include 'com/google/protobuf/RopeByteString.java' + include 'com/google/protobuf/SmallSortedMap.java' + include 'com/google/protobuf/Utf8.java' + } + } + nano { java { srcDirs = [ @@ -77,8 +111,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 |