com.google.api.services.bigtableadmin.v2.model.ColumnFamily Maven / Gradle / Ivy
The newest version!
/*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
* in compliance with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software distributed under the License
* is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
* or implied. See the License for the specific language governing permissions and limitations under
* the License.
*/
/*
* This code was generated by https://github.com/googleapis/google-api-java-client-services/
* Modify at your own risk.
*/
package com.google.api.services.bigtableadmin.v2.model;
/**
* A set of columns within a table which share a common configuration.
*
* This is the Java data model class that specifies how to parse/serialize into the JSON that is
* transmitted over HTTP when working with the Cloud Bigtable Admin API. For a detailed explanation
* see:
* https://developers.google.com/api-client-library/java/google-http-java-client/json
*
*
* @author Google, Inc.
*/
@SuppressWarnings("javadoc")
public final class ColumnFamily extends com.google.api.client.json.GenericJson {
/**
* Garbage collection rule specified as a protobuf. Must serialize to at most 500 bytes. NOTE:
* Garbage collection executes opportunistically in the background, and so it's possible for reads
* to return a cell even if it matches the active GC expression for its family.
* The value may be {@code null}.
*/
@com.google.api.client.util.Key
private GcRule gcRule;
/**
* Output only. Only available with STATS_VIEW, this includes summary statistics about column
* family contents. For statistics over an entire table, see TableStats above.
* The value may be {@code null}.
*/
@com.google.api.client.util.Key
private ColumnFamilyStats stats;
/**
* The type of data stored in each of this family's cell values, including its full encoding. If
* omitted, the family only serves raw untyped bytes. For now, only the `Aggregate` type is
* supported. `Aggregate` can only be set at family creation and is immutable afterwards. If
* `value_type` is `Aggregate`, written data must be compatible with: * `value_type.input_type`
* for `AddInput` mutations
* The value may be {@code null}.
*/
@com.google.api.client.util.Key
private Type valueType;
/**
* Garbage collection rule specified as a protobuf. Must serialize to at most 500 bytes. NOTE:
* Garbage collection executes opportunistically in the background, and so it's possible for reads
* to return a cell even if it matches the active GC expression for its family.
* @return value or {@code null} for none
*/
public GcRule getGcRule() {
return gcRule;
}
/**
* Garbage collection rule specified as a protobuf. Must serialize to at most 500 bytes. NOTE:
* Garbage collection executes opportunistically in the background, and so it's possible for reads
* to return a cell even if it matches the active GC expression for its family.
* @param gcRule gcRule or {@code null} for none
*/
public ColumnFamily setGcRule(GcRule gcRule) {
this.gcRule = gcRule;
return this;
}
/**
* Output only. Only available with STATS_VIEW, this includes summary statistics about column
* family contents. For statistics over an entire table, see TableStats above.
* @return value or {@code null} for none
*/
public ColumnFamilyStats getStats() {
return stats;
}
/**
* Output only. Only available with STATS_VIEW, this includes summary statistics about column
* family contents. For statistics over an entire table, see TableStats above.
* @param stats stats or {@code null} for none
*/
public ColumnFamily setStats(ColumnFamilyStats stats) {
this.stats = stats;
return this;
}
/**
* The type of data stored in each of this family's cell values, including its full encoding. If
* omitted, the family only serves raw untyped bytes. For now, only the `Aggregate` type is
* supported. `Aggregate` can only be set at family creation and is immutable afterwards. If
* `value_type` is `Aggregate`, written data must be compatible with: * `value_type.input_type`
* for `AddInput` mutations
* @return value or {@code null} for none
*/
public Type getValueType() {
return valueType;
}
/**
* The type of data stored in each of this family's cell values, including its full encoding. If
* omitted, the family only serves raw untyped bytes. For now, only the `Aggregate` type is
* supported. `Aggregate` can only be set at family creation and is immutable afterwards. If
* `value_type` is `Aggregate`, written data must be compatible with: * `value_type.input_type`
* for `AddInput` mutations
* @param valueType valueType or {@code null} for none
*/
public ColumnFamily setValueType(Type valueType) {
this.valueType = valueType;
return this;
}
@Override
public ColumnFamily set(String fieldName, Object value) {
return (ColumnFamily) super.set(fieldName, value);
}
@Override
public ColumnFamily clone() {
return (ColumnFamily) super.clone();
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy