diff --git a/libraries/tools/kotlin-gradle-plugin-idea-proto/src/generated/java/org/jetbrains/kotlin/gradle/idea/proto/generated/tcs/IdeaKotlinBinaryCapabilityProto.java b/libraries/tools/kotlin-gradle-plugin-idea-proto/src/generated/java/org/jetbrains/kotlin/gradle/idea/proto/generated/tcs/IdeaKotlinBinaryCapabilityProto.java new file mode 100644 index 00000000000..85bf42d7e08 --- /dev/null +++ b/libraries/tools/kotlin-gradle-plugin-idea-proto/src/generated/java/org/jetbrains/kotlin/gradle/idea/proto/generated/tcs/IdeaKotlinBinaryCapabilityProto.java @@ -0,0 +1,889 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: proto_tcs.proto + +package org.jetbrains.kotlin.gradle.idea.proto.generated.tcs; + +/** + * Protobuf type {@code org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto} + */ +public final class IdeaKotlinBinaryCapabilityProto extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto) + IdeaKotlinBinaryCapabilityProtoOrBuilder { +private static final long serialVersionUID = 0L; + // Use IdeaKotlinBinaryCapabilityProto.newBuilder() to construct. + private IdeaKotlinBinaryCapabilityProto(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } + private IdeaKotlinBinaryCapabilityProto() { + group_ = ""; + name_ = ""; + version_ = ""; + } + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance( + UnusedPrivateParameter unused) { + return new IdeaKotlinBinaryCapabilityProto(); + } + + @java.lang.Override + public final com.google.protobuf.UnknownFieldSet + getUnknownFields() { + return this.unknownFields; + } + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.ProtoTcs.internal_static_org_jetbrains_kotlin_gradle_idea_proto_generated_tcs_IdeaKotlinBinaryCapabilityProto_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.ProtoTcs.internal_static_org_jetbrains_kotlin_gradle_idea_proto_generated_tcs_IdeaKotlinBinaryCapabilityProto_fieldAccessorTable + .ensureFieldAccessorsInitialized( + org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto.class, org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto.Builder.class); + } + + private int bitField0_; + public static final int GROUP_FIELD_NUMBER = 1; + private volatile java.lang.Object group_; + /** + * optional string group = 1; + * @return Whether the group field is set. + */ + @java.lang.Override + public boolean hasGroup() { + return ((bitField0_ & 0x00000001) != 0); + } + /** + * optional string group = 1; + * @return The group. + */ + @java.lang.Override + public java.lang.String getGroup() { + java.lang.Object ref = group_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + group_ = s; + return s; + } + } + /** + * optional string group = 1; + * @return The bytes for group. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getGroupBytes() { + java.lang.Object ref = group_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + group_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int NAME_FIELD_NUMBER = 2; + private volatile java.lang.Object name_; + /** + * optional string name = 2; + * @return Whether the name field is set. + */ + @java.lang.Override + public boolean hasName() { + return ((bitField0_ & 0x00000002) != 0); + } + /** + * optional string name = 2; + * @return The name. + */ + @java.lang.Override + public java.lang.String getName() { + java.lang.Object ref = name_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + name_ = s; + return s; + } + } + /** + * optional string name = 2; + * @return The bytes for name. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getNameBytes() { + java.lang.Object ref = name_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + name_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int VERSION_FIELD_NUMBER = 3; + private volatile java.lang.Object version_; + /** + * optional string version = 3; + * @return Whether the version field is set. + */ + @java.lang.Override + public boolean hasVersion() { + return ((bitField0_ & 0x00000004) != 0); + } + /** + * optional string version = 3; + * @return The version. + */ + @java.lang.Override + public java.lang.String getVersion() { + java.lang.Object ref = version_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + version_ = s; + return s; + } + } + /** + * optional string version = 3; + * @return The bytes for version. + */ + @java.lang.Override + public com.google.protobuf.ByteString + getVersionBytes() { + java.lang.Object ref = version_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + version_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + private byte memoizedIsInitialized = -1; + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) + throws java.io.IOException { + if (((bitField0_ & 0x00000001) != 0)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 1, group_); + } + if (((bitField0_ & 0x00000002) != 0)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 2, name_); + } + if (((bitField0_ & 0x00000004) != 0)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 3, version_); + } + getUnknownFields().writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (((bitField0_ & 0x00000001) != 0)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, group_); + } + if (((bitField0_ & 0x00000002) != 0)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, name_); + } + if (((bitField0_ & 0x00000004) != 0)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, version_); + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto)) { + return super.equals(obj); + } + org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto other = (org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto) obj; + + if (hasGroup() != other.hasGroup()) return false; + if (hasGroup()) { + if (!getGroup() + .equals(other.getGroup())) return false; + } + if (hasName() != other.hasName()) return false; + if (hasName()) { + if (!getName() + .equals(other.getName())) return false; + } + if (hasVersion() != other.hasVersion()) return false; + if (hasVersion()) { + if (!getVersion() + .equals(other.getVersion())) return false; + } + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + if (hasGroup()) { + hash = (37 * hash) + GROUP_FIELD_NUMBER; + hash = (53 * hash) + getGroup().hashCode(); + } + if (hasName()) { + hash = (37 * hash) + NAME_FIELD_NUMBER; + hash = (53 * hash) + getName().hashCode(); + } + if (hasVersion()) { + hash = (37 * hash) + VERSION_FIELD_NUMBER; + hash = (53 * hash) + getVersion().hashCode(); + } + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + public static org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + public static org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input, extensionRegistry); + } + public static org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + public static Builder newBuilder(org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE + ? new Builder() : new Builder().mergeFrom(this); + } + + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + * Protobuf type {@code org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder implements + // @@protoc_insertion_point(builder_implements:org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto) + org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProtoOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.ProtoTcs.internal_static_org_jetbrains_kotlin_gradle_idea_proto_generated_tcs_IdeaKotlinBinaryCapabilityProto_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.ProtoTcs.internal_static_org_jetbrains_kotlin_gradle_idea_proto_generated_tcs_IdeaKotlinBinaryCapabilityProto_fieldAccessorTable + .ensureFieldAccessorsInitialized( + org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto.class, org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto.Builder.class); + } + + // Construct using org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto.newBuilder() + private Builder() { + + } + + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + + } + @java.lang.Override + public Builder clear() { + super.clear(); + group_ = ""; + bitField0_ = (bitField0_ & ~0x00000001); + name_ = ""; + bitField0_ = (bitField0_ & ~0x00000002); + version_ = ""; + bitField0_ = (bitField0_ & ~0x00000004); + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.ProtoTcs.internal_static_org_jetbrains_kotlin_gradle_idea_proto_generated_tcs_IdeaKotlinBinaryCapabilityProto_descriptor; + } + + @java.lang.Override + public org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto getDefaultInstanceForType() { + return org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto.getDefaultInstance(); + } + + @java.lang.Override + public org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto build() { + org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto buildPartial() { + org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto result = new org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto(this); + int from_bitField0_ = bitField0_; + int to_bitField0_ = 0; + if (((from_bitField0_ & 0x00000001) != 0)) { + to_bitField0_ |= 0x00000001; + } + result.group_ = group_; + if (((from_bitField0_ & 0x00000002) != 0)) { + to_bitField0_ |= 0x00000002; + } + result.name_ = name_; + if (((from_bitField0_ & 0x00000004) != 0)) { + to_bitField0_ |= 0x00000004; + } + result.version_ = version_; + result.bitField0_ = to_bitField0_; + onBuilt(); + return result; + } + + @java.lang.Override + public Builder clone() { + return super.clone(); + } + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.setField(field, value); + } + @java.lang.Override + public Builder clearField( + com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } + @java.lang.Override + public Builder clearOneof( + com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.addRepeatedField(field, value); + } + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto) { + return mergeFrom((org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto other) { + if (other == org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto.getDefaultInstance()) return this; + if (other.hasGroup()) { + bitField0_ |= 0x00000001; + group_ = other.group_; + onChanged(); + } + if (other.hasName()) { + bitField0_ |= 0x00000002; + name_ = other.name_; + onChanged(); + } + if (other.hasVersion()) { + bitField0_ |= 0x00000004; + version_ = other.version_; + onChanged(); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: { + group_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000001; + break; + } // case 10 + case 18: { + name_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000002; + break; + } // case 18 + case 26: { + version_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000004; + break; + } // case 26 + default: { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + private int bitField0_; + + private java.lang.Object group_ = ""; + /** + * optional string group = 1; + * @return Whether the group field is set. + */ + public boolean hasGroup() { + return ((bitField0_ & 0x00000001) != 0); + } + /** + * optional string group = 1; + * @return The group. + */ + public java.lang.String getGroup() { + java.lang.Object ref = group_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + group_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * optional string group = 1; + * @return The bytes for group. + */ + public com.google.protobuf.ByteString + getGroupBytes() { + java.lang.Object ref = group_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + group_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * optional string group = 1; + * @param value The group to set. + * @return This builder for chaining. + */ + public Builder setGroup( + java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + bitField0_ |= 0x00000001; + group_ = value; + onChanged(); + return this; + } + /** + * optional string group = 1; + * @return This builder for chaining. + */ + public Builder clearGroup() { + bitField0_ = (bitField0_ & ~0x00000001); + group_ = getDefaultInstance().getGroup(); + onChanged(); + return this; + } + /** + * optional string group = 1; + * @param value The bytes for group to set. + * @return This builder for chaining. + */ + public Builder setGroupBytes( + com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + bitField0_ |= 0x00000001; + group_ = value; + onChanged(); + return this; + } + + private java.lang.Object name_ = ""; + /** + * optional string name = 2; + * @return Whether the name field is set. + */ + public boolean hasName() { + return ((bitField0_ & 0x00000002) != 0); + } + /** + * optional string name = 2; + * @return The name. + */ + public java.lang.String getName() { + java.lang.Object ref = name_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + name_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * optional string name = 2; + * @return The bytes for name. + */ + public com.google.protobuf.ByteString + getNameBytes() { + java.lang.Object ref = name_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + name_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * optional string name = 2; + * @param value The name to set. + * @return This builder for chaining. + */ + public Builder setName( + java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + bitField0_ |= 0x00000002; + name_ = value; + onChanged(); + return this; + } + /** + * optional string name = 2; + * @return This builder for chaining. + */ + public Builder clearName() { + bitField0_ = (bitField0_ & ~0x00000002); + name_ = getDefaultInstance().getName(); + onChanged(); + return this; + } + /** + * optional string name = 2; + * @param value The bytes for name to set. + * @return This builder for chaining. + */ + public Builder setNameBytes( + com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + bitField0_ |= 0x00000002; + name_ = value; + onChanged(); + return this; + } + + private java.lang.Object version_ = ""; + /** + * optional string version = 3; + * @return Whether the version field is set. + */ + public boolean hasVersion() { + return ((bitField0_ & 0x00000004) != 0); + } + /** + * optional string version = 3; + * @return The version. + */ + public java.lang.String getVersion() { + java.lang.Object ref = version_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + version_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * optional string version = 3; + * @return The bytes for version. + */ + public com.google.protobuf.ByteString + getVersionBytes() { + java.lang.Object ref = version_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + version_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * optional string version = 3; + * @param value The version to set. + * @return This builder for chaining. + */ + public Builder setVersion( + java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + bitField0_ |= 0x00000004; + version_ = value; + onChanged(); + return this; + } + /** + * optional string version = 3; + * @return This builder for chaining. + */ + public Builder clearVersion() { + bitField0_ = (bitField0_ & ~0x00000004); + version_ = getDefaultInstance().getVersion(); + onChanged(); + return this; + } + /** + * optional string version = 3; + * @param value The bytes for version to set. + * @return This builder for chaining. + */ + public Builder setVersionBytes( + com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + bitField0_ |= 0x00000004; + version_ = value; + onChanged(); + return this; + } + @java.lang.Override + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); + } + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + + // @@protoc_insertion_point(builder_scope:org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto) + } + + // @@protoc_insertion_point(class_scope:org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto) + private static final org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto(); + } + + public static org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser + PARSER = new com.google.protobuf.AbstractParser() { + @java.lang.Override + public IdeaKotlinBinaryCapabilityProto parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + +} + diff --git a/libraries/tools/kotlin-gradle-plugin-idea-proto/src/generated/java/org/jetbrains/kotlin/gradle/idea/proto/generated/tcs/IdeaKotlinBinaryCapabilityProtoOrBuilder.java b/libraries/tools/kotlin-gradle-plugin-idea-proto/src/generated/java/org/jetbrains/kotlin/gradle/idea/proto/generated/tcs/IdeaKotlinBinaryCapabilityProtoOrBuilder.java new file mode 100644 index 00000000000..95132a27de7 --- /dev/null +++ b/libraries/tools/kotlin-gradle-plugin-idea-proto/src/generated/java/org/jetbrains/kotlin/gradle/idea/proto/generated/tcs/IdeaKotlinBinaryCapabilityProtoOrBuilder.java @@ -0,0 +1,60 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: proto_tcs.proto + +package org.jetbrains.kotlin.gradle.idea.proto.generated.tcs; + +public interface IdeaKotlinBinaryCapabilityProtoOrBuilder extends + // @@protoc_insertion_point(interface_extends:org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto) + com.google.protobuf.MessageOrBuilder { + + /** + * optional string group = 1; + * @return Whether the group field is set. + */ + boolean hasGroup(); + /** + * optional string group = 1; + * @return The group. + */ + java.lang.String getGroup(); + /** + * optional string group = 1; + * @return The bytes for group. + */ + com.google.protobuf.ByteString + getGroupBytes(); + + /** + * optional string name = 2; + * @return Whether the name field is set. + */ + boolean hasName(); + /** + * optional string name = 2; + * @return The name. + */ + java.lang.String getName(); + /** + * optional string name = 2; + * @return The bytes for name. + */ + com.google.protobuf.ByteString + getNameBytes(); + + /** + * optional string version = 3; + * @return Whether the version field is set. + */ + boolean hasVersion(); + /** + * optional string version = 3; + * @return The version. + */ + java.lang.String getVersion(); + /** + * optional string version = 3; + * @return The bytes for version. + */ + com.google.protobuf.ByteString + getVersionBytes(); +} diff --git a/libraries/tools/kotlin-gradle-plugin-idea-proto/src/generated/java/org/jetbrains/kotlin/gradle/idea/proto/generated/tcs/IdeaKotlinBinaryCoordinatesProto.java b/libraries/tools/kotlin-gradle-plugin-idea-proto/src/generated/java/org/jetbrains/kotlin/gradle/idea/proto/generated/tcs/IdeaKotlinBinaryCoordinatesProto.java index acb352bdc2f..48a1ec3c3c2 100644 --- a/libraries/tools/kotlin-gradle-plugin-idea-proto/src/generated/java/org/jetbrains/kotlin/gradle/idea/proto/generated/tcs/IdeaKotlinBinaryCoordinatesProto.java +++ b/libraries/tools/kotlin-gradle-plugin-idea-proto/src/generated/java/org/jetbrains/kotlin/gradle/idea/proto/generated/tcs/IdeaKotlinBinaryCoordinatesProto.java @@ -20,6 +20,7 @@ private static final long serialVersionUID = 0L; module_ = ""; version_ = ""; sourceSetName_ = ""; + capabilities_ = java.util.Collections.emptyList(); } @java.lang.Override @@ -232,6 +233,46 @@ private static final long serialVersionUID = 0L; } } + public static final int CAPABILITIES_FIELD_NUMBER = 5; + private java.util.List capabilities_; + /** + * repeated .org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto capabilities = 5; + */ + @java.lang.Override + public java.util.List getCapabilitiesList() { + return capabilities_; + } + /** + * repeated .org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto capabilities = 5; + */ + @java.lang.Override + public java.util.List + getCapabilitiesOrBuilderList() { + return capabilities_; + } + /** + * repeated .org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto capabilities = 5; + */ + @java.lang.Override + public int getCapabilitiesCount() { + return capabilities_.size(); + } + /** + * repeated .org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto capabilities = 5; + */ + @java.lang.Override + public org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto getCapabilities(int index) { + return capabilities_.get(index); + } + /** + * repeated .org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto capabilities = 5; + */ + @java.lang.Override + public org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProtoOrBuilder getCapabilitiesOrBuilder( + int index) { + return capabilities_.get(index); + } + private byte memoizedIsInitialized = -1; @java.lang.Override public final boolean isInitialized() { @@ -258,6 +299,9 @@ private static final long serialVersionUID = 0L; if (((bitField0_ & 0x00000008) != 0)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 4, sourceSetName_); } + for (int i = 0; i < capabilities_.size(); i++) { + output.writeMessage(5, capabilities_.get(i)); + } getUnknownFields().writeTo(output); } @@ -279,6 +323,10 @@ private static final long serialVersionUID = 0L; if (((bitField0_ & 0x00000008) != 0)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, sourceSetName_); } + for (int i = 0; i < capabilities_.size(); i++) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(5, capabilities_.get(i)); + } size += getUnknownFields().getSerializedSize(); memoizedSize = size; return size; @@ -314,6 +362,8 @@ private static final long serialVersionUID = 0L; if (!getSourceSetName() .equals(other.getSourceSetName())) return false; } + if (!getCapabilitiesList() + .equals(other.getCapabilitiesList())) return false; if (!getUnknownFields().equals(other.getUnknownFields())) return false; return true; } @@ -341,6 +391,10 @@ private static final long serialVersionUID = 0L; hash = (37 * hash) + SOURCE_SET_NAME_FIELD_NUMBER; hash = (53 * hash) + getSourceSetName().hashCode(); } + if (getCapabilitiesCount() > 0) { + hash = (37 * hash) + CAPABILITIES_FIELD_NUMBER; + hash = (53 * hash) + getCapabilitiesList().hashCode(); + } hash = (29 * hash) + getUnknownFields().hashCode(); memoizedHashCode = hash; return hash; @@ -477,6 +531,13 @@ private static final long serialVersionUID = 0L; bitField0_ = (bitField0_ & ~0x00000004); sourceSetName_ = ""; bitField0_ = (bitField0_ & ~0x00000008); + if (capabilitiesBuilder_ == null) { + capabilities_ = java.util.Collections.emptyList(); + } else { + capabilities_ = null; + capabilitiesBuilder_.clear(); + } + bitField0_ = (bitField0_ & ~0x00000010); return this; } @@ -521,6 +582,15 @@ private static final long serialVersionUID = 0L; to_bitField0_ |= 0x00000008; } result.sourceSetName_ = sourceSetName_; + if (capabilitiesBuilder_ == null) { + if (((bitField0_ & 0x00000010) != 0)) { + capabilities_ = java.util.Collections.unmodifiableList(capabilities_); + bitField0_ = (bitField0_ & ~0x00000010); + } + result.capabilities_ = capabilities_; + } else { + result.capabilities_ = capabilitiesBuilder_.build(); + } result.bitField0_ = to_bitField0_; onBuilt(); return result; @@ -590,6 +660,32 @@ private static final long serialVersionUID = 0L; sourceSetName_ = other.sourceSetName_; onChanged(); } + if (capabilitiesBuilder_ == null) { + if (!other.capabilities_.isEmpty()) { + if (capabilities_.isEmpty()) { + capabilities_ = other.capabilities_; + bitField0_ = (bitField0_ & ~0x00000010); + } else { + ensureCapabilitiesIsMutable(); + capabilities_.addAll(other.capabilities_); + } + onChanged(); + } + } else { + if (!other.capabilities_.isEmpty()) { + if (capabilitiesBuilder_.isEmpty()) { + capabilitiesBuilder_.dispose(); + capabilitiesBuilder_ = null; + capabilities_ = other.capabilities_; + bitField0_ = (bitField0_ & ~0x00000010); + capabilitiesBuilder_ = + com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? + getCapabilitiesFieldBuilder() : null; + } else { + capabilitiesBuilder_.addAllMessages(other.capabilities_); + } + } + } this.mergeUnknownFields(other.getUnknownFields()); onChanged(); return this; @@ -636,6 +732,19 @@ private static final long serialVersionUID = 0L; bitField0_ |= 0x00000008; break; } // case 34 + case 42: { + org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto m = + input.readMessage( + org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto.parser(), + extensionRegistry); + if (capabilitiesBuilder_ == null) { + ensureCapabilitiesIsMutable(); + capabilities_.add(m); + } else { + capabilitiesBuilder_.addMessage(m); + } + break; + } // case 42 default: { if (!super.parseUnknownField(input, extensionRegistry, tag)) { done = true; // was an endgroup tag @@ -984,6 +1093,246 @@ private static final long serialVersionUID = 0L; onChanged(); return this; } + + private java.util.List capabilities_ = + java.util.Collections.emptyList(); + private void ensureCapabilitiesIsMutable() { + if (!((bitField0_ & 0x00000010) != 0)) { + capabilities_ = new java.util.ArrayList(capabilities_); + bitField0_ |= 0x00000010; + } + } + + private com.google.protobuf.RepeatedFieldBuilderV3< + org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto, org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto.Builder, org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProtoOrBuilder> capabilitiesBuilder_; + + /** + * repeated .org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto capabilities = 5; + */ + public java.util.List getCapabilitiesList() { + if (capabilitiesBuilder_ == null) { + return java.util.Collections.unmodifiableList(capabilities_); + } else { + return capabilitiesBuilder_.getMessageList(); + } + } + /** + * repeated .org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto capabilities = 5; + */ + public int getCapabilitiesCount() { + if (capabilitiesBuilder_ == null) { + return capabilities_.size(); + } else { + return capabilitiesBuilder_.getCount(); + } + } + /** + * repeated .org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto capabilities = 5; + */ + public org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto getCapabilities(int index) { + if (capabilitiesBuilder_ == null) { + return capabilities_.get(index); + } else { + return capabilitiesBuilder_.getMessage(index); + } + } + /** + * repeated .org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto capabilities = 5; + */ + public Builder setCapabilities( + int index, org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto value) { + if (capabilitiesBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureCapabilitiesIsMutable(); + capabilities_.set(index, value); + onChanged(); + } else { + capabilitiesBuilder_.setMessage(index, value); + } + return this; + } + /** + * repeated .org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto capabilities = 5; + */ + public Builder setCapabilities( + int index, org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto.Builder builderForValue) { + if (capabilitiesBuilder_ == null) { + ensureCapabilitiesIsMutable(); + capabilities_.set(index, builderForValue.build()); + onChanged(); + } else { + capabilitiesBuilder_.setMessage(index, builderForValue.build()); + } + return this; + } + /** + * repeated .org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto capabilities = 5; + */ + public Builder addCapabilities(org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto value) { + if (capabilitiesBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureCapabilitiesIsMutable(); + capabilities_.add(value); + onChanged(); + } else { + capabilitiesBuilder_.addMessage(value); + } + return this; + } + /** + * repeated .org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto capabilities = 5; + */ + public Builder addCapabilities( + int index, org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto value) { + if (capabilitiesBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureCapabilitiesIsMutable(); + capabilities_.add(index, value); + onChanged(); + } else { + capabilitiesBuilder_.addMessage(index, value); + } + return this; + } + /** + * repeated .org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto capabilities = 5; + */ + public Builder addCapabilities( + org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto.Builder builderForValue) { + if (capabilitiesBuilder_ == null) { + ensureCapabilitiesIsMutable(); + capabilities_.add(builderForValue.build()); + onChanged(); + } else { + capabilitiesBuilder_.addMessage(builderForValue.build()); + } + return this; + } + /** + * repeated .org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto capabilities = 5; + */ + public Builder addCapabilities( + int index, org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto.Builder builderForValue) { + if (capabilitiesBuilder_ == null) { + ensureCapabilitiesIsMutable(); + capabilities_.add(index, builderForValue.build()); + onChanged(); + } else { + capabilitiesBuilder_.addMessage(index, builderForValue.build()); + } + return this; + } + /** + * repeated .org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto capabilities = 5; + */ + public Builder addAllCapabilities( + java.lang.Iterable values) { + if (capabilitiesBuilder_ == null) { + ensureCapabilitiesIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll( + values, capabilities_); + onChanged(); + } else { + capabilitiesBuilder_.addAllMessages(values); + } + return this; + } + /** + * repeated .org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto capabilities = 5; + */ + public Builder clearCapabilities() { + if (capabilitiesBuilder_ == null) { + capabilities_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000010); + onChanged(); + } else { + capabilitiesBuilder_.clear(); + } + return this; + } + /** + * repeated .org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto capabilities = 5; + */ + public Builder removeCapabilities(int index) { + if (capabilitiesBuilder_ == null) { + ensureCapabilitiesIsMutable(); + capabilities_.remove(index); + onChanged(); + } else { + capabilitiesBuilder_.remove(index); + } + return this; + } + /** + * repeated .org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto capabilities = 5; + */ + public org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto.Builder getCapabilitiesBuilder( + int index) { + return getCapabilitiesFieldBuilder().getBuilder(index); + } + /** + * repeated .org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto capabilities = 5; + */ + public org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProtoOrBuilder getCapabilitiesOrBuilder( + int index) { + if (capabilitiesBuilder_ == null) { + return capabilities_.get(index); } else { + return capabilitiesBuilder_.getMessageOrBuilder(index); + } + } + /** + * repeated .org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto capabilities = 5; + */ + public java.util.List + getCapabilitiesOrBuilderList() { + if (capabilitiesBuilder_ != null) { + return capabilitiesBuilder_.getMessageOrBuilderList(); + } else { + return java.util.Collections.unmodifiableList(capabilities_); + } + } + /** + * repeated .org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto capabilities = 5; + */ + public org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto.Builder addCapabilitiesBuilder() { + return getCapabilitiesFieldBuilder().addBuilder( + org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto.getDefaultInstance()); + } + /** + * repeated .org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto capabilities = 5; + */ + public org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto.Builder addCapabilitiesBuilder( + int index) { + return getCapabilitiesFieldBuilder().addBuilder( + index, org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto.getDefaultInstance()); + } + /** + * repeated .org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto capabilities = 5; + */ + public java.util.List + getCapabilitiesBuilderList() { + return getCapabilitiesFieldBuilder().getBuilderList(); + } + private com.google.protobuf.RepeatedFieldBuilderV3< + org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto, org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto.Builder, org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProtoOrBuilder> + getCapabilitiesFieldBuilder() { + if (capabilitiesBuilder_ == null) { + capabilitiesBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto, org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto.Builder, org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProtoOrBuilder>( + capabilities_, + ((bitField0_ & 0x00000010) != 0), + getParentForChildren(), + isClean()); + capabilities_ = null; + } + return capabilitiesBuilder_; + } @java.lang.Override public final Builder setUnknownFields( final com.google.protobuf.UnknownFieldSet unknownFields) { diff --git a/libraries/tools/kotlin-gradle-plugin-idea-proto/src/generated/java/org/jetbrains/kotlin/gradle/idea/proto/generated/tcs/IdeaKotlinBinaryCoordinatesProtoOrBuilder.java b/libraries/tools/kotlin-gradle-plugin-idea-proto/src/generated/java/org/jetbrains/kotlin/gradle/idea/proto/generated/tcs/IdeaKotlinBinaryCoordinatesProtoOrBuilder.java index c5c12c9b41e..744d84394dc 100644 --- a/libraries/tools/kotlin-gradle-plugin-idea-proto/src/generated/java/org/jetbrains/kotlin/gradle/idea/proto/generated/tcs/IdeaKotlinBinaryCoordinatesProtoOrBuilder.java +++ b/libraries/tools/kotlin-gradle-plugin-idea-proto/src/generated/java/org/jetbrains/kotlin/gradle/idea/proto/generated/tcs/IdeaKotlinBinaryCoordinatesProtoOrBuilder.java @@ -74,4 +74,28 @@ public interface IdeaKotlinBinaryCoordinatesProtoOrBuilder extends */ com.google.protobuf.ByteString getSourceSetNameBytes(); + + /** + * repeated .org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto capabilities = 5; + */ + java.util.List + getCapabilitiesList(); + /** + * repeated .org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto capabilities = 5; + */ + org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto getCapabilities(int index); + /** + * repeated .org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto capabilities = 5; + */ + int getCapabilitiesCount(); + /** + * repeated .org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto capabilities = 5; + */ + java.util.List + getCapabilitiesOrBuilderList(); + /** + * repeated .org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto capabilities = 5; + */ + org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProtoOrBuilder getCapabilitiesOrBuilder( + int index); } diff --git a/libraries/tools/kotlin-gradle-plugin-idea-proto/src/generated/java/org/jetbrains/kotlin/gradle/idea/proto/generated/tcs/ProtoTcs.java b/libraries/tools/kotlin-gradle-plugin-idea-proto/src/generated/java/org/jetbrains/kotlin/gradle/idea/proto/generated/tcs/ProtoTcs.java index 52413b5e9ea..dfed3a95078 100644 --- a/libraries/tools/kotlin-gradle-plugin-idea-proto/src/generated/java/org/jetbrains/kotlin/gradle/idea/proto/generated/tcs/ProtoTcs.java +++ b/libraries/tools/kotlin-gradle-plugin-idea-proto/src/generated/java/org/jetbrains/kotlin/gradle/idea/proto/generated/tcs/ProtoTcs.java @@ -54,6 +54,11 @@ public final class ProtoTcs { static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internal_static_org_jetbrains_kotlin_gradle_idea_proto_generated_tcs_IdeaKotlinBinaryCoordinatesProto_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_org_jetbrains_kotlin_gradle_idea_proto_generated_tcs_IdeaKotlinBinaryCapabilityProto_descriptor; + static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_org_jetbrains_kotlin_gradle_idea_proto_generated_tcs_IdeaKotlinBinaryCapabilityProto_fieldAccessorTable; static final com.google.protobuf.Descriptors.Descriptor internal_static_org_jetbrains_kotlin_gradle_idea_proto_generated_tcs_IdeaKotlinSourceCoordinatesProto_descriptor; static final @@ -128,17 +133,23 @@ public final class ProtoTcs { "tlinProjectCoordinatesProto\022\025\n\010build_id\030" + "\001 \001(\tH\000\210\001\001\022\031\n\014project_path\030\002 \001(\tH\001\210\001\001\022\031\n" + "\014project_name\030\003 \001(\tH\002\210\001\001B\013\n\t_build_idB\017\n" + - "\r_project_pathB\017\n\r_project_name\"\264\001\n Idea" + + "\r_project_pathB\017\n\r_project_name\"\241\002\n Idea" + "KotlinBinaryCoordinatesProto\022\022\n\005group\030\001 " + "\001(\tH\000\210\001\001\022\023\n\006module\030\002 \001(\tH\001\210\001\001\022\024\n\007version" + "\030\003 \001(\tH\002\210\001\001\022\034\n\017source_set_name\030\004 \001(\tH\003\210\001" + - "\001B\010\n\006_groupB\t\n\007_moduleB\n\n\010_versionB\022\n\020_s" + - "ource_set_name\"\317\001\n IdeaKotlinSourceCoord" + - "inatesProto\022m\n\007project\030\001 \001(\0132W.org.jetbr" + - "ains.kotlin.gradle.idea.proto.generated." + - "tcs.IdeaKotlinProjectCoordinatesProtoH\000\210" + - "\001\001\022\034\n\017source_set_name\030\002 \001(\tH\001\210\001\001B\n\n\010_pro" + - "jectB\022\n\020_source_set_nameB\002P\001b\006proto3" + "\001\022k\n\014capabilities\030\005 \003(\0132U.org.jetbrains." + + "kotlin.gradle.idea.proto.generated.tcs.I" + + "deaKotlinBinaryCapabilityProtoB\010\n\006_group" + + "B\t\n\007_moduleB\n\n\010_versionB\022\n\020_source_set_n" + + "ame\"}\n\037IdeaKotlinBinaryCapabilityProto\022\022" + + "\n\005group\030\001 \001(\tH\000\210\001\001\022\021\n\004name\030\002 \001(\tH\001\210\001\001\022\024\n" + + "\007version\030\003 \001(\tH\002\210\001\001B\010\n\006_groupB\007\n\005_nameB\n" + + "\n\010_version\"\317\001\n IdeaKotlinSourceCoordinat" + + "esProto\022m\n\007project\030\001 \001(\0132W.org.jetbrains" + + ".kotlin.gradle.idea.proto.generated.tcs." + + "IdeaKotlinProjectCoordinatesProtoH\000\210\001\001\022\034" + + "\n\017source_set_name\030\002 \001(\tH\001\210\001\001B\n\n\010_project" + + "B\022\n\020_source_set_nameB\002P\001b\006proto3" }; descriptor = com.google.protobuf.Descriptors.FileDescriptor .internalBuildGeneratedFileFrom(descriptorData, @@ -192,9 +203,15 @@ public final class ProtoTcs { internal_static_org_jetbrains_kotlin_gradle_idea_proto_generated_tcs_IdeaKotlinBinaryCoordinatesProto_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_org_jetbrains_kotlin_gradle_idea_proto_generated_tcs_IdeaKotlinBinaryCoordinatesProto_descriptor, - new java.lang.String[] { "Group", "Module", "Version", "SourceSetName", "Group", "Module", "Version", "SourceSetName", }); - internal_static_org_jetbrains_kotlin_gradle_idea_proto_generated_tcs_IdeaKotlinSourceCoordinatesProto_descriptor = + new java.lang.String[] { "Group", "Module", "Version", "SourceSetName", "Capabilities", "Group", "Module", "Version", "SourceSetName", }); + internal_static_org_jetbrains_kotlin_gradle_idea_proto_generated_tcs_IdeaKotlinBinaryCapabilityProto_descriptor = getDescriptor().getMessageTypes().get(8); + internal_static_org_jetbrains_kotlin_gradle_idea_proto_generated_tcs_IdeaKotlinBinaryCapabilityProto_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_org_jetbrains_kotlin_gradle_idea_proto_generated_tcs_IdeaKotlinBinaryCapabilityProto_descriptor, + new java.lang.String[] { "Group", "Name", "Version", "Group", "Name", "Version", }); + internal_static_org_jetbrains_kotlin_gradle_idea_proto_generated_tcs_IdeaKotlinSourceCoordinatesProto_descriptor = + getDescriptor().getMessageTypes().get(9); internal_static_org_jetbrains_kotlin_gradle_idea_proto_generated_tcs_IdeaKotlinSourceCoordinatesProto_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_org_jetbrains_kotlin_gradle_idea_proto_generated_tcs_IdeaKotlinSourceCoordinatesProto_descriptor, diff --git a/libraries/tools/kotlin-gradle-plugin-idea-proto/src/generated/kotlin/org/jetbrains/kotlin/gradle/idea/proto/generated/tcs/IdeaKotlinBinaryCapabilityProtoKt.kt b/libraries/tools/kotlin-gradle-plugin-idea-proto/src/generated/kotlin/org/jetbrains/kotlin/gradle/idea/proto/generated/tcs/IdeaKotlinBinaryCapabilityProtoKt.kt new file mode 100644 index 00000000000..674a953bb4a --- /dev/null +++ b/libraries/tools/kotlin-gradle-plugin-idea-proto/src/generated/kotlin/org/jetbrains/kotlin/gradle/idea/proto/generated/tcs/IdeaKotlinBinaryCapabilityProtoKt.kt @@ -0,0 +1,101 @@ +//Generated by the protocol buffer compiler. DO NOT EDIT! +// source: proto_tcs.proto + +package org.jetbrains.kotlin.gradle.idea.proto.generated.tcs; + +@kotlin.jvm.JvmName("-initializeideaKotlinBinaryCapabilityProto") +inline fun ideaKotlinBinaryCapabilityProto(block: org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProtoKt.Dsl.() -> kotlin.Unit): org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto = + org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProtoKt.Dsl._create(org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto.newBuilder()).apply { block() }._build() +object IdeaKotlinBinaryCapabilityProtoKt { + @kotlin.OptIn(com.google.protobuf.kotlin.OnlyForUseByGeneratedProtoCode::class) + @com.google.protobuf.kotlin.ProtoDslMarker + class Dsl private constructor( + private val _builder: org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto.Builder + ) { + companion object { + @kotlin.jvm.JvmSynthetic + @kotlin.PublishedApi + internal fun _create(builder: org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto.Builder): Dsl = Dsl(builder) + } + + @kotlin.jvm.JvmSynthetic + @kotlin.PublishedApi + internal fun _build(): org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto = _builder.build() + + /** + * optional string group = 1; + */ + var group: kotlin.String + @JvmName("getGroup") + get() = _builder.getGroup() + @JvmName("setGroup") + set(value) { + _builder.setGroup(value) + } + /** + * optional string group = 1; + */ + fun clearGroup() { + _builder.clearGroup() + } + /** + * optional string group = 1; + * @return Whether the group field is set. + */ + fun hasGroup(): kotlin.Boolean { + return _builder.hasGroup() + } + + /** + * optional string name = 2; + */ + var name: kotlin.String + @JvmName("getName") + get() = _builder.getName() + @JvmName("setName") + set(value) { + _builder.setName(value) + } + /** + * optional string name = 2; + */ + fun clearName() { + _builder.clearName() + } + /** + * optional string name = 2; + * @return Whether the name field is set. + */ + fun hasName(): kotlin.Boolean { + return _builder.hasName() + } + + /** + * optional string version = 3; + */ + var version: kotlin.String + @JvmName("getVersion") + get() = _builder.getVersion() + @JvmName("setVersion") + set(value) { + _builder.setVersion(value) + } + /** + * optional string version = 3; + */ + fun clearVersion() { + _builder.clearVersion() + } + /** + * optional string version = 3; + * @return Whether the version field is set. + */ + fun hasVersion(): kotlin.Boolean { + return _builder.hasVersion() + } + } +} +@kotlin.jvm.JvmSynthetic +inline fun org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto.copy(block: org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProtoKt.Dsl.() -> kotlin.Unit): org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto = + org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProtoKt.Dsl._create(this.toBuilder()).apply { block() }._build() + diff --git a/libraries/tools/kotlin-gradle-plugin-idea-proto/src/generated/kotlin/org/jetbrains/kotlin/gradle/idea/proto/generated/tcs/IdeaKotlinBinaryCoordinatesProtoKt.kt b/libraries/tools/kotlin-gradle-plugin-idea-proto/src/generated/kotlin/org/jetbrains/kotlin/gradle/idea/proto/generated/tcs/IdeaKotlinBinaryCoordinatesProtoKt.kt index 7a92e1e458a..ca586b55f31 100644 --- a/libraries/tools/kotlin-gradle-plugin-idea-proto/src/generated/kotlin/org/jetbrains/kotlin/gradle/idea/proto/generated/tcs/IdeaKotlinBinaryCoordinatesProtoKt.kt +++ b/libraries/tools/kotlin-gradle-plugin-idea-proto/src/generated/kotlin/org/jetbrains/kotlin/gradle/idea/proto/generated/tcs/IdeaKotlinBinaryCoordinatesProtoKt.kt @@ -117,6 +117,78 @@ object IdeaKotlinBinaryCoordinatesProtoKt { fun hasSourceSetName(): kotlin.Boolean { return _builder.hasSourceSetName() } + + /** + * An uninstantiable, behaviorless type to represent the field in + * generics. + */ + @kotlin.OptIn(com.google.protobuf.kotlin.OnlyForUseByGeneratedProtoCode::class) + class CapabilitiesProxy private constructor() : com.google.protobuf.kotlin.DslProxy() + /** + * repeated .org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto capabilities = 5; + */ + val capabilities: com.google.protobuf.kotlin.DslList + @kotlin.jvm.JvmSynthetic + get() = com.google.protobuf.kotlin.DslList( + _builder.getCapabilitiesList() + ) + /** + * repeated .org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto capabilities = 5; + * @param value The capabilities to add. + */ + @kotlin.jvm.JvmSynthetic + @kotlin.jvm.JvmName("addCapabilities") + fun com.google.protobuf.kotlin.DslList.add(value: org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto) { + _builder.addCapabilities(value) + } + /** + * repeated .org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto capabilities = 5; + * @param value The capabilities to add. + */ + @kotlin.jvm.JvmSynthetic + @kotlin.jvm.JvmName("plusAssignCapabilities") + @Suppress("NOTHING_TO_INLINE") + inline operator fun com.google.protobuf.kotlin.DslList.plusAssign(value: org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto) { + add(value) + } + /** + * repeated .org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto capabilities = 5; + * @param values The capabilities to add. + */ + @kotlin.jvm.JvmSynthetic + @kotlin.jvm.JvmName("addAllCapabilities") + fun com.google.protobuf.kotlin.DslList.addAll(values: kotlin.collections.Iterable) { + _builder.addAllCapabilities(values) + } + /** + * repeated .org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto capabilities = 5; + * @param values The capabilities to add. + */ + @kotlin.jvm.JvmSynthetic + @kotlin.jvm.JvmName("plusAssignAllCapabilities") + @Suppress("NOTHING_TO_INLINE") + inline operator fun com.google.protobuf.kotlin.DslList.plusAssign(values: kotlin.collections.Iterable) { + addAll(values) + } + /** + * repeated .org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto capabilities = 5; + * @param index The index to set the value at. + * @param value The capabilities to set. + */ + @kotlin.jvm.JvmSynthetic + @kotlin.jvm.JvmName("setCapabilities") + operator fun com.google.protobuf.kotlin.DslList.set(index: kotlin.Int, value: org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto) { + _builder.setCapabilities(index, value) + } + /** + * repeated .org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto capabilities = 5; + */ + @kotlin.jvm.JvmSynthetic + @kotlin.jvm.JvmName("clearCapabilities") + fun com.google.protobuf.kotlin.DslList.clear() { + _builder.clearCapabilities() + } + } } @kotlin.jvm.JvmSynthetic diff --git a/libraries/tools/kotlin-gradle-plugin-idea-proto/src/main/kotlin/org/jetbrains/kotlin/gradle/idea/proto/tcs/IdeaKotlinBinaryCapability.kt b/libraries/tools/kotlin-gradle-plugin-idea-proto/src/main/kotlin/org/jetbrains/kotlin/gradle/idea/proto/tcs/IdeaKotlinBinaryCapability.kt new file mode 100644 index 00000000000..764dd9a230e --- /dev/null +++ b/libraries/tools/kotlin-gradle-plugin-idea-proto/src/main/kotlin/org/jetbrains/kotlin/gradle/idea/proto/tcs/IdeaKotlinBinaryCapability.kt @@ -0,0 +1,28 @@ +/* + * Copyright 2010-2023 JetBrains s.r.o. and Kotlin Programming Language contributors. + * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file. + */ + +package org.jetbrains.kotlin.gradle.idea.proto.tcs + +import org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto +import org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.ideaKotlinBinaryCapabilityProto +import org.jetbrains.kotlin.gradle.idea.tcs.IdeaKotlinBinaryCapability + +internal fun IdeaKotlinBinaryCapabilityProto( + capability: IdeaKotlinBinaryCapability +): IdeaKotlinBinaryCapabilityProto { + return ideaKotlinBinaryCapabilityProto { + this.group = capability.group + this.name = capability.name + capability.version?.let { this.version = it } + } +} + +internal fun IdeaKotlinBinaryCapability(proto: IdeaKotlinBinaryCapabilityProto): IdeaKotlinBinaryCapability { + return IdeaKotlinBinaryCapability( + group = proto.group, + name = proto.name, + version = if (proto.hasVersion()) proto.version else null, + ) +} diff --git a/libraries/tools/kotlin-gradle-plugin-idea-proto/src/main/kotlin/org/jetbrains/kotlin/gradle/idea/proto/tcs/IdeaKotlinBinaryCoordinates.kt b/libraries/tools/kotlin-gradle-plugin-idea-proto/src/main/kotlin/org/jetbrains/kotlin/gradle/idea/proto/tcs/IdeaKotlinBinaryCoordinates.kt index 6de1f2f8210..fff3515233c 100644 --- a/libraries/tools/kotlin-gradle-plugin-idea-proto/src/main/kotlin/org/jetbrains/kotlin/gradle/idea/proto/tcs/IdeaKotlinBinaryCoordinates.kt +++ b/libraries/tools/kotlin-gradle-plugin-idea-proto/src/main/kotlin/org/jetbrains/kotlin/gradle/idea/proto/tcs/IdeaKotlinBinaryCoordinates.kt @@ -10,13 +10,16 @@ import org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.ideaKotlinBinaryCoor import org.jetbrains.kotlin.gradle.idea.tcs.IdeaKotlinBinaryCoordinates internal fun IdeaKotlinBinaryCoordinatesProto( - coordinates: IdeaKotlinBinaryCoordinates + coordinates: IdeaKotlinBinaryCoordinates, ): IdeaKotlinBinaryCoordinatesProto { return ideaKotlinBinaryCoordinatesProto { this.group = coordinates.group this.module = coordinates.module coordinates.version?.let { this.version = it } coordinates.sourceSetName?.let { this.sourceSetName = it } + coordinates.capabilities.forEach { capability -> + this.capabilities.add(IdeaKotlinBinaryCapabilityProto(capability)) + } } } @@ -25,6 +28,7 @@ internal fun IdeaKotlinBinaryCoordinates(proto: IdeaKotlinBinaryCoordinatesProto group = proto.group, module = proto.module, version = if (proto.hasVersion()) proto.version else null, - sourceSetName = if (proto.hasSourceSetName()) proto.sourceSetName else null + sourceSetName = if (proto.hasSourceSetName()) proto.sourceSetName else null, + capabilities = proto.capabilitiesList.map(::IdeaKotlinBinaryCapability).toSet() ) -} \ No newline at end of file +} diff --git a/libraries/tools/kotlin-gradle-plugin-idea-proto/src/main/proto/proto_tcs.proto b/libraries/tools/kotlin-gradle-plugin-idea-proto/src/main/proto/proto_tcs.proto index 52337e4a5fb..cb411e3bb3b 100644 --- a/libraries/tools/kotlin-gradle-plugin-idea-proto/src/main/proto/proto_tcs.proto +++ b/libraries/tools/kotlin-gradle-plugin-idea-proto/src/main/proto/proto_tcs.proto @@ -59,6 +59,13 @@ message IdeaKotlinBinaryCoordinatesProto { optional string module = 2; optional string version = 3; optional string source_set_name = 4; + repeated IdeaKotlinBinaryCapabilityProto capabilities = 5; +} + +message IdeaKotlinBinaryCapabilityProto { + optional string group = 1; + optional string name = 2; + optional string version = 3; } message IdeaKotlinSourceCoordinatesProto { diff --git a/libraries/tools/kotlin-gradle-plugin-idea-proto/src/test/kotlin/org/jetbrains/kotlin/gradle/idea/proto/tcs/IdeaKotlinBinaryCapabilitySerializationTest.kt b/libraries/tools/kotlin-gradle-plugin-idea-proto/src/test/kotlin/org/jetbrains/kotlin/gradle/idea/proto/tcs/IdeaKotlinBinaryCapabilitySerializationTest.kt new file mode 100644 index 00000000000..5d7748e5f25 --- /dev/null +++ b/libraries/tools/kotlin-gradle-plugin-idea-proto/src/test/kotlin/org/jetbrains/kotlin/gradle/idea/proto/tcs/IdeaKotlinBinaryCapabilitySerializationTest.kt @@ -0,0 +1,36 @@ +/* + * Copyright 2010-2022 JetBrains s.r.o. and Kotlin Programming Language contributors. + * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file. + */ + +package org.jetbrains.kotlin.gradle.idea.proto.tcs + +import org.jetbrains.kotlin.gradle.idea.proto.AbstractSerializationTest +import org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCapabilityProto +import org.jetbrains.kotlin.gradle.idea.tcs.IdeaKotlinBinaryCapability +import org.junit.Test + +class IdeaKotlinBinaryCapabilitySerializationTest : AbstractSerializationTest() { + override fun serialize(value: IdeaKotlinBinaryCapability): ByteArray = IdeaKotlinBinaryCapabilityProto(value).toByteArray() + + override fun deserialize(data: ByteArray): IdeaKotlinBinaryCapability = + IdeaKotlinBinaryCapability(IdeaKotlinBinaryCapabilityProto.parseFrom(data)) + + @Test + fun `sample 0`() = testSerialization( + IdeaKotlinBinaryCapability( + group = "myGroup", + name = "myModule", + version = "myVersion", + ) + ) + + @Test + fun `sample 1`() = testSerialization( + IdeaKotlinBinaryCapability( + group = "myGroup", + name = "myModule", + version = null, + ) + ) +} diff --git a/libraries/tools/kotlin-gradle-plugin-idea-proto/src/test/kotlin/org/jetbrains/kotlin/gradle/idea/proto/tcs/IdeaKotlinBinaryCoordinatesSerializationTest.kt b/libraries/tools/kotlin-gradle-plugin-idea-proto/src/test/kotlin/org/jetbrains/kotlin/gradle/idea/proto/tcs/IdeaKotlinBinaryCoordinatesSerializationTest.kt index f26fd7aeacf..dc6981a0b4c 100644 --- a/libraries/tools/kotlin-gradle-plugin-idea-proto/src/test/kotlin/org/jetbrains/kotlin/gradle/idea/proto/tcs/IdeaKotlinBinaryCoordinatesSerializationTest.kt +++ b/libraries/tools/kotlin-gradle-plugin-idea-proto/src/test/kotlin/org/jetbrains/kotlin/gradle/idea/proto/tcs/IdeaKotlinBinaryCoordinatesSerializationTest.kt @@ -7,6 +7,7 @@ package org.jetbrains.kotlin.gradle.idea.proto.tcs import org.jetbrains.kotlin.gradle.idea.proto.AbstractSerializationTest import org.jetbrains.kotlin.gradle.idea.proto.generated.tcs.IdeaKotlinBinaryCoordinatesProto +import org.jetbrains.kotlin.gradle.idea.tcs.IdeaKotlinBinaryCapability import org.jetbrains.kotlin.gradle.idea.tcs.IdeaKotlinBinaryCoordinates import org.junit.Test @@ -45,4 +46,18 @@ class IdeaKotlinBinaryCoordinatesSerializationTest : AbstractSerializationTest (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V + public final fun copy (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lorg/jetbrains/kotlin/gradle/idea/tcs/IdeaKotlinBinaryCapability; + public static synthetic fun copy$default (Lorg/jetbrains/kotlin/gradle/idea/tcs/IdeaKotlinBinaryCapability;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ILjava/lang/Object;)Lorg/jetbrains/kotlin/gradle/idea/tcs/IdeaKotlinBinaryCapability; + public fun equals (Ljava/lang/Object;)Z + public final fun getGroup ()Ljava/lang/String; + public final fun getName ()Ljava/lang/String; + public final fun getVersion ()Ljava/lang/String; + public fun hashCode ()I + public fun toString ()Ljava/lang/String; +} + public final class org/jetbrains/kotlin/gradle/idea/tcs/IdeaKotlinBinaryCoordinates : org/jetbrains/kotlin/gradle/idea/tcs/IdeaKotlinDependencyCoordinates { public static final field serialVersionUID J public fun (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V public synthetic fun (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ILkotlin/jvm/internal/DefaultConstructorMarker;)V + public fun (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/util/Set;)V + public synthetic fun (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/util/Set;ILkotlin/jvm/internal/DefaultConstructorMarker;)V public final fun component1 ()Ljava/lang/String; public final fun component2 ()Ljava/lang/String; public final fun component3 ()Ljava/lang/String; public final fun component4 ()Ljava/lang/String; public final fun copy (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lorg/jetbrains/kotlin/gradle/idea/tcs/IdeaKotlinBinaryCoordinates; + public final fun copy (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/util/Set;)Lorg/jetbrains/kotlin/gradle/idea/tcs/IdeaKotlinBinaryCoordinates; public static synthetic fun copy$default (Lorg/jetbrains/kotlin/gradle/idea/tcs/IdeaKotlinBinaryCoordinates;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ILjava/lang/Object;)Lorg/jetbrains/kotlin/gradle/idea/tcs/IdeaKotlinBinaryCoordinates; + public static synthetic fun copy$default (Lorg/jetbrains/kotlin/gradle/idea/tcs/IdeaKotlinBinaryCoordinates;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/util/Set;ILjava/lang/Object;)Lorg/jetbrains/kotlin/gradle/idea/tcs/IdeaKotlinBinaryCoordinates; public fun equals (Ljava/lang/Object;)Z + public final fun getCapabilities ()Ljava/util/Set; public final fun getGroup ()Ljava/lang/String; public final fun getModule ()Ljava/lang/String; public final fun getSourceSetName ()Ljava/lang/String; diff --git a/libraries/tools/kotlin-gradle-plugin-idea/src/main/kotlin/org/jetbrains/kotlin/gradle/idea/tcs/IdeaKotlinBinaryCapability.kt b/libraries/tools/kotlin-gradle-plugin-idea/src/main/kotlin/org/jetbrains/kotlin/gradle/idea/tcs/IdeaKotlinBinaryCapability.kt new file mode 100644 index 00000000000..2fb78a2742d --- /dev/null +++ b/libraries/tools/kotlin-gradle-plugin-idea/src/main/kotlin/org/jetbrains/kotlin/gradle/idea/tcs/IdeaKotlinBinaryCapability.kt @@ -0,0 +1,63 @@ +/* + * Copyright 2010-2023 JetBrains s.r.o. and Kotlin Programming Language contributors. + * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file. + */ + +package org.jetbrains.kotlin.gradle.idea.tcs + +import java.io.Serializable + +/** + * Several variants can be published under a given set of maven coordinates (group, module, version), + * Capabilities can classify those variants in a way that e.g. two variants with the same maven coordinates + * can be resolved next to each other. + * + * A classical example for this would be resolving the 'main' (aka 'production') variant alongside + * the corresponding "testFixtures". + * + * See: + * - https://docs.gradle.org/current/userguide/feature_variants.html + * - https://docs.gradle.org/current/userguide/component_capabilities.html + * @since 1.9.20 + */ +@IdeaKotlinModel +class IdeaKotlinBinaryCapability( + val group: String, + val name: String, + val version: String?, +) : Serializable { + internal companion object { + const val serialVersionUID = 0L + } + + override fun toString(): String { + return buildString { + append("$group:$name") + if (version != null) append(":$version") + } + } + + fun copy( + group: String = this.group, + name: String = this.name, + version: String? = this.version, + ): IdeaKotlinBinaryCapability { + return IdeaKotlinBinaryCapability(group = group, name = name, version = version) + } + + override fun equals(other: Any?): Boolean { + if (this === other) return true + if (other !is IdeaKotlinBinaryCapability) return false + if (group != other.group) return false + if (name != other.name) return false + if (version != other.version) return false + return true + } + + override fun hashCode(): Int { + var result = group.hashCode() + result = 31 * result + name.hashCode() + result = 31 * result + (version?.hashCode() ?: 0) + return result + } +} diff --git a/libraries/tools/kotlin-gradle-plugin-idea/src/main/kotlin/org/jetbrains/kotlin/gradle/idea/tcs/IdeaKotlinDependencyCoordinates.kt b/libraries/tools/kotlin-gradle-plugin-idea/src/main/kotlin/org/jetbrains/kotlin/gradle/idea/tcs/IdeaKotlinDependencyCoordinates.kt index 59baa538c27..a81f77b5cff 100644 --- a/libraries/tools/kotlin-gradle-plugin-idea/src/main/kotlin/org/jetbrains/kotlin/gradle/idea/tcs/IdeaKotlinDependencyCoordinates.kt +++ b/libraries/tools/kotlin-gradle-plugin-idea/src/main/kotlin/org/jetbrains/kotlin/gradle/idea/tcs/IdeaKotlinDependencyCoordinates.kt @@ -3,6 +3,8 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file. */ +@file:Suppress("ConstPropertyName", "DeprecatedCallableAddReplaceWith") + package org.jetbrains.kotlin.gradle.idea.tcs import java.io.Serializable @@ -10,14 +12,174 @@ import java.io.Serializable @IdeaKotlinModel sealed interface IdeaKotlinDependencyCoordinates : Serializable -data class IdeaKotlinBinaryCoordinates( +class IdeaKotlinBinaryCoordinates( val group: String, val module: String, val version: String?, val sourceSetName: String? = null, + + /** + * @see IdeaKotlinBinaryCapability + * @since 1.9.20 + */ + val capabilities: Set = emptySet(), ) : IdeaKotlinDependencyCoordinates { - override fun toString(): String { - return "$group:$module:$version${sourceSetName?.let { ":$it" }.orEmpty()}" + + constructor( + group: String, + module: String, + version: String?, + sourceSetName: String? = null, + ) : this( + group = group, + module = module, + version = version, + sourceSetName = sourceSetName, + capabilities = emptySet() + ) + + + /** + * String that can be used to identify the coordinates with the following contract: + * All coordinates that are equal will have an equal identityString + * All coordinates that are not equal will have a non equal identityString + * + * This, however, shall not be shown to users, as the String is hard to read + * The identityString is not stable across Kotlin versions, hence not intended to be parsed. + */ + val identityString = buildString { + append("$group:$module") + if (version != null) append(":$version") + if (capabilities.isNotEmpty()) { + append(capabilities.joinToString(", ", "(", ")")) + } + } + + /** + * String intended to be shown to users. E.g. a library within the IDE can use + * this String to show the coordinates to a given user. + * + * This will try to be as useful as possible, implementing a notion of 'classifying capabilities' + * + * Example, testFixtures from Gradle: + * Such testFixtures will be resolved with coordinates like + * ```kotlin + * IdeaKotlinBinaryCoordinates( + * group = "org.jetbrains", + * module = "sample", + * version = "1.0.0, + * capabilities = setOf( + * IdeaKotlinBinaryCapability( + * group = "org.jetbrains", + * name = "sample-test-fixtures, /* <--- See the classifying 'test-fixtures' suffix */ + * version = "1.0.0" + * ) + * ) + * ) + * ``` + * + * Such coordinates will be displayed using their classifiers like + * "org.jetbrains:sample-test-fixtures:1.0.0" + * + */ + val displayString = run { + val classifyingCapabilities = capabilities.filter { capability -> capability.group == group && capability.name.startsWith(module) } + when { + classifyingCapabilities.size == 1 -> classifyingCapabilities.single().toString() + classifyingCapabilities.size > 1 -> buildString { + append(group) + append(classifyingCapabilities.joinToString(prefix = "(", postfix = ")", separator = ", ") { capability -> + capability.name.removePrefix(group) + }) + } + else -> buildString { + append("$group:$module") + if (version != null) append(":$version") + if (sourceSetName != null) append(":$sourceSetName") + } + } + } + + override fun toString(): String = displayString + + override fun equals(other: Any?): Boolean { + if (this === other) return true + if (other !is IdeaKotlinBinaryCoordinates) return false + if (group != other.group) return false + if (module != other.module) return false + if (version != other.version) return false + if (sourceSetName != other.sourceSetName) return false + if (capabilities != other.capabilities) return false + + return true + } + + override fun hashCode(): Int { + var result = group.hashCode() + result = 31 * result + module.hashCode() + result = 31 * result + (version?.hashCode() ?: 0) + result = 31 * result + (sourceSetName?.hashCode() ?: 0) + result = 31 * result + capabilities.hashCode() + return result + } + + /* + Keep compatibility with 1.9.0 and lower + */ + fun copy( + group: String = this.group, + module: String = this.module, + version: String? = this.version, + sourceSetName: String? = this.sourceSetName, + ): IdeaKotlinBinaryCoordinates { + return IdeaKotlinBinaryCoordinates( + group = group, + module = module, + version = version, + sourceSetName = sourceSetName, + capabilities = capabilities + ) + } + + fun copy( + group: String = this.group, + module: String = this.module, + version: String? = this.version, + sourceSetName: String? = this.sourceSetName, + capabilities: Set = this.capabilities, + ): IdeaKotlinBinaryCoordinates { + return IdeaKotlinBinaryCoordinates( + group = group, + module = module, + version = version, + sourceSetName = sourceSetName, + capabilities = capabilities + ) + } + + @Deprecated("Since 1.9.20") + operator fun component1(): String = this.group + + @Deprecated("Since 1.9.20") + operator fun component2(): String = this.module + + @Deprecated("Since 1.9.20") + operator fun component3(): String? = this.version + + @Deprecated("Since 1.9.20") + operator fun component4(): String? = this.sourceSetName + + /** + * In order to keep java.io.Serializable implementation backwards compatible: + * 'capabilities' was added in 1.9.20. If a binary produced before 1.9.20 gets deserialized, then 'capabilities' + * will be 'null'. In this case we use the 'copy' function to provide an instance that will have an emptySet instead. + */ + private fun readResolve(): Any { + @Suppress("SENSELESS_COMPARISON") + if (capabilities == null) { + return copy(capabilities = emptySet()) + } + return this } internal companion object { @@ -28,7 +190,7 @@ data class IdeaKotlinBinaryCoordinates( data class IdeaKotlinProjectCoordinates( val buildId: String, val projectPath: String, - val projectName: String + val projectName: String, ) : Serializable, IdeaKotlinDependencyCoordinates { override fun toString(): String { return "${buildId.takeIf { it != ":" }?.plus(":").orEmpty()}$projectPath" @@ -41,7 +203,7 @@ data class IdeaKotlinProjectCoordinates( data class IdeaKotlinSourceCoordinates( val project: IdeaKotlinProjectCoordinates, - val sourceSetName: String + val sourceSetName: String, ) : IdeaKotlinDependencyCoordinates { val buildId: String get() = project.buildId diff --git a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/ide/factories.kt b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/ide/factories.kt index 7d72a499683..0cf79001117 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/ide/factories.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/ide/factories.kt @@ -8,7 +8,8 @@ package org.jetbrains.kotlin.gradle.plugin.ide import org.gradle.api.Project import org.gradle.api.artifacts.component.ModuleComponentIdentifier import org.gradle.api.artifacts.component.ProjectComponentIdentifier -import org.jetbrains.kotlin.gradle.ExternalKotlinTargetApi +import org.gradle.api.capabilities.Capability +import org.jetbrains.kotlin.gradle.idea.tcs.IdeaKotlinBinaryCapability import org.jetbrains.kotlin.gradle.idea.tcs.IdeaKotlinBinaryCoordinates import org.jetbrains.kotlin.gradle.idea.tcs.IdeaKotlinProjectCoordinates import org.jetbrains.kotlin.gradle.idea.tcs.IdeaKotlinSourceCoordinates @@ -41,11 +42,23 @@ internal fun IdeaKotlinSourceCoordinates(sourceSet: KotlinSourceSet): IdeaKotlin ) } -internal fun IdeaKotlinBinaryCoordinates(identifier: ModuleComponentIdentifier): IdeaKotlinBinaryCoordinates { +internal fun IdeaKotlinBinaryCoordinates( + identifier: ModuleComponentIdentifier, + capabilities: List = emptyList(), +): IdeaKotlinBinaryCoordinates { return IdeaKotlinBinaryCoordinates( group = identifier.group, module = identifier.module, - version = identifier.version + version = identifier.version, + capabilities = capabilities.map(::IdeaKotlinBinaryCapability).toSet() + ) +} + +internal fun IdeaKotlinBinaryCapability(capability: Capability): IdeaKotlinBinaryCapability { + return IdeaKotlinBinaryCapability( + group = capability.group, + name = capability.name, + version = capability.version ) }