Class Runtime.RawExtension.Builder

java.lang.Object
com.google.protobuf.AbstractMessageLite.Builder
com.google.protobuf.AbstractMessage.Builder<BuilderType>
com.google.protobuf.GeneratedMessageV3.Builder<Runtime.RawExtension.Builder>
io.kubernetes.client.proto.Runtime.RawExtension.Builder
All Implemented Interfaces:
com.google.protobuf.Message.Builder, com.google.protobuf.MessageLite.Builder, com.google.protobuf.MessageLiteOrBuilder, com.google.protobuf.MessageOrBuilder, Runtime.RawExtensionOrBuilder, Cloneable
Enclosing class:
Runtime.RawExtension

public static final class Runtime.RawExtension.Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Runtime.RawExtension.Builder> implements Runtime.RawExtensionOrBuilder
 RawExtension is used to hold extensions in external versions.
 To use this, make a field which has RawExtension as its type in your external, versioned
 struct, and Object in your internal struct. You also need to register your
 various plugin types.
 // Internal package:
 type MyAPIObject struct {
        runtime.TypeMeta `json:",inline"`
        MyPlugin runtime.Object `json:"myPlugin"`
 }
 type PluginA struct {
        AOption string `json:"aOption"`
 }
 // External package:
 type MyAPIObject struct {
        runtime.TypeMeta `json:",inline"`
        MyPlugin runtime.RawExtension `json:"myPlugin"`
 }
 type PluginA struct {
        AOption string `json:"aOption"`
 }
 // On the wire, the JSON will look something like this:
 {
        "kind":"MyAPIObject",
        "apiVersion":"v1",
        "myPlugin": {
                "kind":"PluginA",
                "aOption":"foo",
        },
 }
 So what happens? Decode first uses json or yaml to unmarshal the serialized data into
 your external MyAPIObject. That causes the raw JSON to be stored, but not unpacked.
 The next step is to copy (using pkg/conversion) into the internal struct. The runtime
 package's DefaultScheme has conversion functions installed which will unpack the
 JSON stored in RawExtension, turning it into the correct object type, and storing it
 in the Object. (TODO: In the case where the object is of an unknown type, a
 runtime.Unknown object will be created and stored.)
 +k8s:deepcopy-gen=true
 +protobuf=true
 +k8s:openapi-gen=true
 
Protobuf type k8s.io.apimachinery.pkg.runtime.RawExtension
  • Method Details

    • getDescriptor

      public static final com.google.protobuf.Descriptors.Descriptor getDescriptor()
    • internalGetFieldAccessorTable

      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()
      Specified by:
      internalGetFieldAccessorTable in class com.google.protobuf.GeneratedMessageV3.Builder<Runtime.RawExtension.Builder>
    • clear

      Specified by:
      clear in interface com.google.protobuf.Message.Builder
      Specified by:
      clear in interface com.google.protobuf.MessageLite.Builder
      Overrides:
      clear in class com.google.protobuf.GeneratedMessageV3.Builder<Runtime.RawExtension.Builder>
    • getDescriptorForType

      public com.google.protobuf.Descriptors.Descriptor getDescriptorForType()
      Specified by:
      getDescriptorForType in interface com.google.protobuf.Message.Builder
      Specified by:
      getDescriptorForType in interface com.google.protobuf.MessageOrBuilder
      Overrides:
      getDescriptorForType in class com.google.protobuf.GeneratedMessageV3.Builder<Runtime.RawExtension.Builder>
    • getDefaultInstanceForType

      public Runtime.RawExtension getDefaultInstanceForType()
      Specified by:
      getDefaultInstanceForType in interface com.google.protobuf.MessageLiteOrBuilder
      Specified by:
      getDefaultInstanceForType in interface com.google.protobuf.MessageOrBuilder
    • build

      public Runtime.RawExtension build()
      Specified by:
      build in interface com.google.protobuf.Message.Builder
      Specified by:
      build in interface com.google.protobuf.MessageLite.Builder
    • buildPartial

      public Runtime.RawExtension buildPartial()
      Specified by:
      buildPartial in interface com.google.protobuf.Message.Builder
      Specified by:
      buildPartial in interface com.google.protobuf.MessageLite.Builder
    • clone

      Specified by:
      clone in interface com.google.protobuf.Message.Builder
      Specified by:
      clone in interface com.google.protobuf.MessageLite.Builder
      Overrides:
      clone in class com.google.protobuf.GeneratedMessageV3.Builder<Runtime.RawExtension.Builder>
    • setField

      public Runtime.RawExtension.Builder setField(com.google.protobuf.Descriptors.FieldDescriptor field, Object value)
      Specified by:
      setField in interface com.google.protobuf.Message.Builder
      Overrides:
      setField in class com.google.protobuf.GeneratedMessageV3.Builder<Runtime.RawExtension.Builder>
    • clearField

      public Runtime.RawExtension.Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field)
      Specified by:
      clearField in interface com.google.protobuf.Message.Builder
      Overrides:
      clearField in class com.google.protobuf.GeneratedMessageV3.Builder<Runtime.RawExtension.Builder>
    • clearOneof

      public Runtime.RawExtension.Builder clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof)
      Specified by:
      clearOneof in interface com.google.protobuf.Message.Builder
      Overrides:
      clearOneof in class com.google.protobuf.GeneratedMessageV3.Builder<Runtime.RawExtension.Builder>
    • setRepeatedField

      public Runtime.RawExtension.Builder setRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor field, int index, Object value)
      Specified by:
      setRepeatedField in interface com.google.protobuf.Message.Builder
      Overrides:
      setRepeatedField in class com.google.protobuf.GeneratedMessageV3.Builder<Runtime.RawExtension.Builder>
    • addRepeatedField

      public Runtime.RawExtension.Builder addRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor field, Object value)
      Specified by:
      addRepeatedField in interface com.google.protobuf.Message.Builder
      Overrides:
      addRepeatedField in class com.google.protobuf.GeneratedMessageV3.Builder<Runtime.RawExtension.Builder>
    • mergeFrom

      public Runtime.RawExtension.Builder mergeFrom(com.google.protobuf.Message other)
      Specified by:
      mergeFrom in interface com.google.protobuf.Message.Builder
      Overrides:
      mergeFrom in class com.google.protobuf.AbstractMessage.Builder<Runtime.RawExtension.Builder>
    • mergeFrom

    • isInitialized

      public final boolean isInitialized()
      Specified by:
      isInitialized in interface com.google.protobuf.MessageLiteOrBuilder
      Overrides:
      isInitialized in class com.google.protobuf.GeneratedMessageV3.Builder<Runtime.RawExtension.Builder>
    • mergeFrom

      public Runtime.RawExtension.Builder mergeFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
      Specified by:
      mergeFrom in interface com.google.protobuf.Message.Builder
      Specified by:
      mergeFrom in interface com.google.protobuf.MessageLite.Builder
      Overrides:
      mergeFrom in class com.google.protobuf.AbstractMessage.Builder<Runtime.RawExtension.Builder>
      Throws:
      IOException
    • hasRaw

      public boolean hasRaw()
       Raw is the underlying serialization of this object.
       TODO: Determine how to detect ContentType and ContentEncoding of 'Raw' data.
       
      optional bytes raw = 1;
      Specified by:
      hasRaw in interface Runtime.RawExtensionOrBuilder
    • getRaw

      public com.google.protobuf.ByteString getRaw()
       Raw is the underlying serialization of this object.
       TODO: Determine how to detect ContentType and ContentEncoding of 'Raw' data.
       
      optional bytes raw = 1;
      Specified by:
      getRaw in interface Runtime.RawExtensionOrBuilder
    • setRaw

      public Runtime.RawExtension.Builder setRaw(com.google.protobuf.ByteString value)
       Raw is the underlying serialization of this object.
       TODO: Determine how to detect ContentType and ContentEncoding of 'Raw' data.
       
      optional bytes raw = 1;
    • clearRaw

      public Runtime.RawExtension.Builder clearRaw()
       Raw is the underlying serialization of this object.
       TODO: Determine how to detect ContentType and ContentEncoding of 'Raw' data.
       
      optional bytes raw = 1;
    • setUnknownFields

      public final Runtime.RawExtension.Builder setUnknownFields(com.google.protobuf.UnknownFieldSet unknownFields)
      Specified by:
      setUnknownFields in interface com.google.protobuf.Message.Builder
      Overrides:
      setUnknownFields in class com.google.protobuf.GeneratedMessageV3.Builder<Runtime.RawExtension.Builder>
    • mergeUnknownFields

      public final Runtime.RawExtension.Builder mergeUnknownFields(com.google.protobuf.UnknownFieldSet unknownFields)
      Specified by:
      mergeUnknownFields in interface com.google.protobuf.Message.Builder
      Overrides:
      mergeUnknownFields in class com.google.protobuf.GeneratedMessageV3.Builder<Runtime.RawExtension.Builder>