Formats table mutations to be in the expected proto format.
Package
@google-cloud/bigtableExample
const mutation = new Mutation({
key: 'gwashington',
method: 'insert',
data: {
jadams: 1
}
});
Constructors
(constructor)(mutation)
constructor(mutation: MutationConstructorObj);
Constructs a new instance of the Mutation
class
Parameter | |
---|---|
Name | Description |
mutation |
MutationConstructorObj
|
Properties
data
data: Data;
key
key: string;
method
method: string;
methods
static methods: {
INSERT: string;
DELETE: string;
};
Mutation methods
INSERT => setCell DELETE => deleteFrom*
Methods
convertFromBytes(bytes, options)
static convertFromBytes(bytes: Buffer | string, options?: ConvertFromBytesOptions): Buffer | Value | string;
Parses "bytes" returned from proto service.
Parameters | |
---|---|
Name | Description |
bytes |
"\"buffer\"".__global.Buffer | string
Base64 encoded string. |
options |
ConvertFromBytesOptions
Options to device return types |
Returns | |
---|---|
Type | Description |
"\"buffer\"".__global.Buffer | Value_2 | string | {string|number|buffer} |
convertToBytes(data)
static convertToBytes(data: Buffer | Data): Buffer | Data;
Converts data into a buffer for proto service.
Parameter | |
---|---|
Name | Description |
data |
"\"buffer\"".__global.Buffer | Data_2
The data to be sent. |
Returns | |
---|---|
Type | Description |
"\"buffer\"".__global.Buffer | Data_2 | {buffer} |
createTimeRange(start, end)
static createTimeRange(start: Date | number, end: Date | number): TimeRange;
Takes date objects and creates a time range.
Parameters | |
---|---|
Name | Description |
start |
Date | number
The start date. |
end |
Date | number
The end date. |
Returns | |
---|---|
Type | Description |
TimeRange | {object} |
encodeDelete(data)
static encodeDelete(data?: Data | Data[]): IMutation[];
Formats a delete
mutation to what the proto service expects. Depending on what data is supplied to this method, it will return an object that can will do one of the following:
* Delete specific cells from a column. * Delete all cells contained with a specific family. * Delete all cells from an entire rows.
Parameter | |
---|---|
Name | Description |
data |
Data_2 | Data_2[]
The entry data. |
Returns | |
---|---|
Type | Description |
IMutation[] | {object} |
Mutation.encodeDelete([
'follows:gwashington'
]);
// {
// deleteFromColumn: {
// familyName: 'follows',
// columnQualifier: 'gwashington', // as buffer
// timeRange: null // optional
// }
// }
Mutation.encodeDelete([
'follows'
]);
// {
// deleteFromFamily: {
// familyName: 'follows'
// }
// }
Mutation.encodeDelete();
// {
// deleteFromRow: {}
// }
// It's also possible to specify a time range when deleting specific
// columns.
Mutation.encodeDelete([
{
column: 'follows:gwashington',
time: {
start: new Date('March 21, 2000'),
end: new Date('March 21, 2001')
}
}
]);
encodeSetCell(data)
static encodeSetCell(data: Data): SetCellObj[];
Formats an insert
mutation to what the proto service expects.
Parameter | |
---|---|
Name | Description |
data |
Data
The entity data. |
Returns | |
---|---|
Type | Description |
SetCellObj[] | {object[]} |
Mutation.encodeSetCell({
follows: {
gwashington: 1,
alincoln: 1
}
});
// [
// {
// setCell: {
// familyName: 'follows',
// columnQualifier: 'gwashington', // as buffer
// timestampMicros: -1, // -1 means to use the server time
// value: 1 // as buffer
// }
// }, {
// setCell: {
// familyName: 'follows',
// columnQualifier: 'alincoln', // as buffer
// timestampMicros: new Date(), // uses the client's current time
// value: 1 // as buffer
// }
// }
// ]
parse(mutation)
static parse(mutation: Mutation): IMutateRowRequest;
Creates a new Mutation object and returns the proto JSON form.
Parameter | |
---|---|
Name | Description |
mutation |
Mutation
The entity data. |
Returns | |
---|---|
Type | Description |
IMutateRowRequest | {object} |
parseColumnName(columnName)
static parseColumnName(columnName: string): ParsedColumn;
Parses a column name into an object.
Parameter | |
---|---|
Name | Description |
columnName |
string
|
Returns | |
---|---|
Type | Description |
ParsedColumn | {object} |
Mutation.parseColumnName('follows:gwashington');
// {
// family: 'follows',
// qualifier: 'gwashington'
// }
toProto()
toProto(): IMutateRowRequest;
Converts the mutation object into proto friendly JSON.
Returns | |
---|---|
Type | Description |
IMutateRowRequest | {object} |