public final class Operation extends GeneratedMessageV3 implements OperationOrBuilder
Contains an operation for a resource loosely based on the JSON-PATCH format
with support for:
- Custom filters for describing partial array patch.
- Extended path values for describing nested arrays.
- Custom fields for describing the resource for which the operation is being
described.
- Allows extension to custom operations not natively supported by RFC6902.
See https://tools.ietf.org/html/rfc6902 for details on the original RFC.
Protobuf type google.cloud.recommender.v1beta1.Operation
Inherited Members
com.google.protobuf.GeneratedMessageV3.<ListT>makeMutableCopy(ListT)
com.google.protobuf.GeneratedMessageV3.<ListT>makeMutableCopy(ListT,int)
com.google.protobuf.GeneratedMessageV3.<T>emptyList(java.lang.Class<T>)
com.google.protobuf.GeneratedMessageV3.internalGetMapFieldReflection(int)
Static Fields
ACTION_FIELD_NUMBER
public static final int ACTION_FIELD_NUMBER
Field Value |
Type |
Description |
int |
|
PATH_FIELD_NUMBER
public static final int PATH_FIELD_NUMBER
Field Value |
Type |
Description |
int |
|
PATH_FILTERS_FIELD_NUMBER
public static final int PATH_FILTERS_FIELD_NUMBER
Field Value |
Type |
Description |
int |
|
PATH_VALUE_MATCHERS_FIELD_NUMBER
public static final int PATH_VALUE_MATCHERS_FIELD_NUMBER
Field Value |
Type |
Description |
int |
|
RESOURCE_FIELD_NUMBER
public static final int RESOURCE_FIELD_NUMBER
Field Value |
Type |
Description |
int |
|
RESOURCE_TYPE_FIELD_NUMBER
public static final int RESOURCE_TYPE_FIELD_NUMBER
Field Value |
Type |
Description |
int |
|
SOURCE_PATH_FIELD_NUMBER
public static final int SOURCE_PATH_FIELD_NUMBER
Field Value |
Type |
Description |
int |
|
SOURCE_RESOURCE_FIELD_NUMBER
public static final int SOURCE_RESOURCE_FIELD_NUMBER
Field Value |
Type |
Description |
int |
|
VALUE_FIELD_NUMBER
public static final int VALUE_FIELD_NUMBER
Field Value |
Type |
Description |
int |
|
VALUE_MATCHER_FIELD_NUMBER
public static final int VALUE_MATCHER_FIELD_NUMBER
Field Value |
Type |
Description |
int |
|
Static Methods
getDefaultInstance()
public static Operation getDefaultInstance()
getDescriptor()
public static final Descriptors.Descriptor getDescriptor()
newBuilder()
public static Operation.Builder newBuilder()
newBuilder(Operation prototype)
public static Operation.Builder newBuilder(Operation prototype)
Parameter |
Name |
Description |
prototype |
Operation
|
public static Operation parseDelimitedFrom(InputStream input)
public static Operation parseDelimitedFrom(InputStream input, ExtensionRegistryLite extensionRegistry)
parseFrom(byte[] data)
public static Operation parseFrom(byte[] data)
Parameter |
Name |
Description |
data |
byte[]
|
parseFrom(byte[] data, ExtensionRegistryLite extensionRegistry)
public static Operation parseFrom(byte[] data, ExtensionRegistryLite extensionRegistry)
parseFrom(ByteString data)
public static Operation parseFrom(ByteString data)
parseFrom(ByteString data, ExtensionRegistryLite extensionRegistry)
public static Operation parseFrom(ByteString data, ExtensionRegistryLite extensionRegistry)
public static Operation parseFrom(CodedInputStream input)
public static Operation parseFrom(CodedInputStream input, ExtensionRegistryLite extensionRegistry)
public static Operation parseFrom(InputStream input)
public static Operation parseFrom(InputStream input, ExtensionRegistryLite extensionRegistry)
parseFrom(ByteBuffer data)
public static Operation parseFrom(ByteBuffer data)
parseFrom(ByteBuffer data, ExtensionRegistryLite extensionRegistry)
public static Operation parseFrom(ByteBuffer data, ExtensionRegistryLite extensionRegistry)
parser()
public static Parser<Operation> parser()
Methods
containsPathFilters(String key)
public boolean containsPathFilters(String key)
Set of filters to apply if path
refers to array elements or nested array
elements in order to narrow down to a single unique element that is being
tested/modified.
This is intended to be an exact match per filter. To perform advanced
matching, use path_value_matchers.
- Example:
`
{
"/versions/*/name" : "it-123"
"/versions/*/targetSize/percent": 20
}
- Example:
{
"/bindings/*/role": "roles/owner"
"/bindings/*/condition" : null
}
- Example:
{
"/bindings/*/role": "roles/owner"
"/bindings/*/members/*" : ["x@example.com", "y@example.com"]
}
`
When both path_filters and path_value_matchers are set, an implicit AND
must be performed.
map<string, .google.protobuf.Value> path_filters = 8;
Parameter |
Name |
Description |
key |
String
|
containsPathValueMatchers(String key)
public boolean containsPathValueMatchers(String key)
Similar to path_filters, this contains set of filters to apply if path
field refers to array elements. This is meant to support value matching
beyond exact match. To perform exact match, use path_filters.
When both path_filters and path_value_matchers are set, an implicit AND
must be performed.
map<string, .google.cloud.recommender.v1beta1.ValueMatcher> path_value_matchers = 11;
Parameter |
Name |
Description |
key |
String
|
equals(Object obj)
public boolean equals(Object obj)
Parameter |
Name |
Description |
obj |
Object
|
Overrides
getAction()
public String getAction()
Type of this operation. Contains one of 'add', 'remove', 'replace', 'move',
'copy', 'test' and 'custom' operations. This field is case-insensitive and
always populated.
string action = 1;
Returns |
Type |
Description |
String |
The action.
|
getActionBytes()
public ByteString getActionBytes()
Type of this operation. Contains one of 'add', 'remove', 'replace', 'move',
'copy', 'test' and 'custom' operations. This field is case-insensitive and
always populated.
string action = 1;
Returns |
Type |
Description |
ByteString |
The bytes for action.
|
getDefaultInstanceForType()
public Operation getDefaultInstanceForType()
getParserForType()
public Parser<Operation> getParserForType()
Overrides
getPath()
Path to the target field being operated on. If the operation is at the
resource level, then path should be "/". This field is always populated.
string path = 4;
Returns |
Type |
Description |
String |
The path.
|
getPathBytes()
public ByteString getPathBytes()
Path to the target field being operated on. If the operation is at the
resource level, then path should be "/". This field is always populated.
string path = 4;
Returns |
Type |
Description |
ByteString |
The bytes for path.
|
getPathFilters() (deprecated)
public Map<String,Value> getPathFilters()
getPathFiltersCount()
public int getPathFiltersCount()
Set of filters to apply if path
refers to array elements or nested array
elements in order to narrow down to a single unique element that is being
tested/modified.
This is intended to be an exact match per filter. To perform advanced
matching, use path_value_matchers.
- Example:
`
{
"/versions/*/name" : "it-123"
"/versions/*/targetSize/percent": 20
}
- Example:
{
"/bindings/*/role": "roles/owner"
"/bindings/*/condition" : null
}
- Example:
{
"/bindings/*/role": "roles/owner"
"/bindings/*/members/*" : ["x@example.com", "y@example.com"]
}
`
When both path_filters and path_value_matchers are set, an implicit AND
must be performed.
map<string, .google.protobuf.Value> path_filters = 8;
Returns |
Type |
Description |
int |
|
getPathFiltersMap()
public Map<String,Value> getPathFiltersMap()
Set of filters to apply if path
refers to array elements or nested array
elements in order to narrow down to a single unique element that is being
tested/modified.
This is intended to be an exact match per filter. To perform advanced
matching, use path_value_matchers.
- Example:
`
{
"/versions/*/name" : "it-123"
"/versions/*/targetSize/percent": 20
}
- Example:
{
"/bindings/*/role": "roles/owner"
"/bindings/*/condition" : null
}
- Example:
{
"/bindings/*/role": "roles/owner"
"/bindings/*/members/*" : ["x@example.com", "y@example.com"]
}
`
When both path_filters and path_value_matchers are set, an implicit AND
must be performed.
map<string, .google.protobuf.Value> path_filters = 8;
getPathFiltersOrDefault(String key, Value defaultValue)
public Value getPathFiltersOrDefault(String key, Value defaultValue)
Set of filters to apply if path
refers to array elements or nested array
elements in order to narrow down to a single unique element that is being
tested/modified.
This is intended to be an exact match per filter. To perform advanced
matching, use path_value_matchers.
- Example:
`
{
"/versions/*/name" : "it-123"
"/versions/*/targetSize/percent": 20
}
- Example:
{
"/bindings/*/role": "roles/owner"
"/bindings/*/condition" : null
}
- Example:
{
"/bindings/*/role": "roles/owner"
"/bindings/*/members/*" : ["x@example.com", "y@example.com"]
}
`
When both path_filters and path_value_matchers are set, an implicit AND
must be performed.
map<string, .google.protobuf.Value> path_filters = 8;
Parameters |
Name |
Description |
key |
String
|
defaultValue |
Value
|
Returns |
Type |
Description |
Value |
|
getPathFiltersOrThrow(String key)
public Value getPathFiltersOrThrow(String key)
Set of filters to apply if path
refers to array elements or nested array
elements in order to narrow down to a single unique element that is being
tested/modified.
This is intended to be an exact match per filter. To perform advanced
matching, use path_value_matchers.
- Example:
`
{
"/versions/*/name" : "it-123"
"/versions/*/targetSize/percent": 20
}
- Example:
{
"/bindings/*/role": "roles/owner"
"/bindings/*/condition" : null
}
- Example:
{
"/bindings/*/role": "roles/owner"
"/bindings/*/members/*" : ["x@example.com", "y@example.com"]
}
`
When both path_filters and path_value_matchers are set, an implicit AND
must be performed.
map<string, .google.protobuf.Value> path_filters = 8;
Parameter |
Name |
Description |
key |
String
|
Returns |
Type |
Description |
Value |
|
getPathValueCase()
public Operation.PathValueCase getPathValueCase()
getPathValueMatchers() (deprecated)
public Map<String,ValueMatcher> getPathValueMatchers()
getPathValueMatchersCount()
public int getPathValueMatchersCount()
Similar to path_filters, this contains set of filters to apply if path
field refers to array elements. This is meant to support value matching
beyond exact match. To perform exact match, use path_filters.
When both path_filters and path_value_matchers are set, an implicit AND
must be performed.
map<string, .google.cloud.recommender.v1beta1.ValueMatcher> path_value_matchers = 11;
Returns |
Type |
Description |
int |
|
getPathValueMatchersMap()
public Map<String,ValueMatcher> getPathValueMatchersMap()
Similar to path_filters, this contains set of filters to apply if path
field refers to array elements. This is meant to support value matching
beyond exact match. To perform exact match, use path_filters.
When both path_filters and path_value_matchers are set, an implicit AND
must be performed.
map<string, .google.cloud.recommender.v1beta1.ValueMatcher> path_value_matchers = 11;
getPathValueMatchersOrDefault(String key, ValueMatcher defaultValue)
public ValueMatcher getPathValueMatchersOrDefault(String key, ValueMatcher defaultValue)
Similar to path_filters, this contains set of filters to apply if path
field refers to array elements. This is meant to support value matching
beyond exact match. To perform exact match, use path_filters.
When both path_filters and path_value_matchers are set, an implicit AND
must be performed.
map<string, .google.cloud.recommender.v1beta1.ValueMatcher> path_value_matchers = 11;
getPathValueMatchersOrThrow(String key)
public ValueMatcher getPathValueMatchersOrThrow(String key)
Similar to path_filters, this contains set of filters to apply if path
field refers to array elements. This is meant to support value matching
beyond exact match. To perform exact match, use path_filters.
When both path_filters and path_value_matchers are set, an implicit AND
must be performed.
map<string, .google.cloud.recommender.v1beta1.ValueMatcher> path_value_matchers = 11;
Parameter |
Name |
Description |
key |
String
|
getResource()
public String getResource()
Contains the fully qualified resource name. This field is always populated.
ex: //cloudresourcemanager.googleapis.com/projects/foo.
string resource = 3;
Returns |
Type |
Description |
String |
The resource.
|
getResourceBytes()
public ByteString getResourceBytes()
Contains the fully qualified resource name. This field is always populated.
ex: //cloudresourcemanager.googleapis.com/projects/foo.
string resource = 3;
Returns |
Type |
Description |
ByteString |
The bytes for resource.
|
getResourceType()
public String getResourceType()
Type of GCP resource being modified/tested. This field is always populated.
Example: cloudresourcemanager.googleapis.com/Project,
compute.googleapis.com/Instance
string resource_type = 2;
Returns |
Type |
Description |
String |
The resourceType.
|
getResourceTypeBytes()
public ByteString getResourceTypeBytes()
Type of GCP resource being modified/tested. This field is always populated.
Example: cloudresourcemanager.googleapis.com/Project,
compute.googleapis.com/Instance
string resource_type = 2;
Returns |
Type |
Description |
ByteString |
The bytes for resourceType.
|
getSerializedSize()
public int getSerializedSize()
Returns |
Type |
Description |
int |
|
Overrides
getSourcePath()
public String getSourcePath()
Can be set with action 'copy' or 'move' to indicate the source field within
resource or source_resource, ignored if provided for other operation types.
string source_path = 6;
Returns |
Type |
Description |
String |
The sourcePath.
|
getSourcePathBytes()
public ByteString getSourcePathBytes()
Can be set with action 'copy' or 'move' to indicate the source field within
resource or source_resource, ignored if provided for other operation types.
string source_path = 6;
Returns |
Type |
Description |
ByteString |
The bytes for sourcePath.
|
getSourceResource()
public String getSourceResource()
Can be set with action 'copy' to copy resource configuration across
different resources of the same type. Example: A resource clone can be
done via action = 'copy', path = "/", from = "/",
source_resource = <source> and resource_name = <target>.
This field is empty for all other values of action
.
string source_resource = 5;
Returns |
Type |
Description |
String |
The sourceResource.
|
getSourceResourceBytes()
public ByteString getSourceResourceBytes()
Can be set with action 'copy' to copy resource configuration across
different resources of the same type. Example: A resource clone can be
done via action = 'copy', path = "/", from = "/",
source_resource = <source> and resource_name = <target>.
This field is empty for all other values of action
.
string source_resource = 5;
Returns |
Type |
Description |
ByteString |
The bytes for sourceResource.
|
getValue()
Value for the path
field. Will be set for actions:'add'/'replace'.
Maybe set for action: 'test'. Either this or value_matcher
will be set
for 'test' operation. An exact match must be performed.
.google.protobuf.Value value = 7;
Returns |
Type |
Description |
Value |
The value.
|
getValueMatcher()
public ValueMatcher getValueMatcher()
Can be set for action 'test' for advanced matching for the value of
'path' field. Either this or value
will be set for 'test' operation.
.google.cloud.recommender.v1beta1.ValueMatcher value_matcher = 10;
getValueMatcherOrBuilder()
public ValueMatcherOrBuilder getValueMatcherOrBuilder()
Can be set for action 'test' for advanced matching for the value of
'path' field. Either this or value
will be set for 'test' operation.
.google.cloud.recommender.v1beta1.ValueMatcher value_matcher = 10;
getValueOrBuilder()
public ValueOrBuilder getValueOrBuilder()
Value for the path
field. Will be set for actions:'add'/'replace'.
Maybe set for action: 'test'. Either this or value_matcher
will be set
for 'test' operation. An exact match must be performed.
.google.protobuf.Value value = 7;
hasValue()
public boolean hasValue()
Value for the path
field. Will be set for actions:'add'/'replace'.
Maybe set for action: 'test'. Either this or value_matcher
will be set
for 'test' operation. An exact match must be performed.
.google.protobuf.Value value = 7;
Returns |
Type |
Description |
boolean |
Whether the value field is set.
|
hasValueMatcher()
public boolean hasValueMatcher()
Can be set for action 'test' for advanced matching for the value of
'path' field. Either this or value
will be set for 'test' operation.
.google.cloud.recommender.v1beta1.ValueMatcher value_matcher = 10;
Returns |
Type |
Description |
boolean |
Whether the valueMatcher field is set.
|
hashCode()
Returns |
Type |
Description |
int |
|
Overrides
internalGetFieldAccessorTable()
protected GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()
Overrides
internalGetMapFieldReflection(int number)
protected MapFieldReflectionAccessor internalGetMapFieldReflection(int number)
Parameter |
Name |
Description |
number |
int
|
Returns |
Type |
Description |
com.google.protobuf.MapFieldReflectionAccessor |
|
Overrides
com.google.protobuf.GeneratedMessageV3.internalGetMapFieldReflection(int)
isInitialized()
public final boolean isInitialized()
Overrides
newBuilderForType()
public Operation.Builder newBuilderForType()
newBuilderForType(GeneratedMessageV3.BuilderParent parent)
protected Operation.Builder newBuilderForType(GeneratedMessageV3.BuilderParent parent)
Overrides
newInstance(GeneratedMessageV3.UnusedPrivateParameter unused)
protected Object newInstance(GeneratedMessageV3.UnusedPrivateParameter unused)
Returns |
Type |
Description |
Object |
|
Overrides
toBuilder()
public Operation.Builder toBuilder()
writeTo(CodedOutputStream output)
public void writeTo(CodedOutputStream output)
Overrides