|
- /*
- Copyright 2016 Google LLC
-
- 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.
- */
- package bttest_test
-
- import (
- "context"
- "fmt"
- "log"
-
- "cloud.google.com/go/bigtable"
- "cloud.google.com/go/bigtable/bttest"
- "google.golang.org/api/option"
- "google.golang.org/grpc"
- )
-
- func ExampleNewServer() {
-
- srv, err := bttest.NewServer("localhost:0")
-
- if err != nil {
- log.Fatalln(err)
- }
-
- ctx := context.Background()
-
- conn, err := grpc.Dial(srv.Addr, grpc.WithInsecure())
- if err != nil {
- log.Fatalln(err)
- }
-
- proj, instance := "proj", "instance"
-
- adminClient, err := bigtable.NewAdminClient(ctx, proj, instance, option.WithGRPCConn(conn))
- if err != nil {
- log.Fatalln(err)
- }
-
- if err = adminClient.CreateTable(ctx, "example"); err != nil {
- log.Fatalln(err)
- }
-
- if err = adminClient.CreateColumnFamily(ctx, "example", "links"); err != nil {
- log.Fatalln(err)
- }
-
- client, err := bigtable.NewClient(ctx, proj, instance, option.WithGRPCConn(conn))
- if err != nil {
- log.Fatalln(err)
- }
- tbl := client.Open("example")
-
- mut := bigtable.NewMutation()
- mut.Set("links", "golang.org", bigtable.Now(), []byte("Gophers!"))
- if err = tbl.Apply(ctx, "com.google.cloud", mut); err != nil {
- log.Fatalln(err)
- }
-
- if row, err := tbl.ReadRow(ctx, "com.google.cloud"); err != nil {
- log.Fatalln(err)
- } else {
- for _, column := range row["links"] {
- fmt.Println(column.Column)
- fmt.Println(string(column.Value))
- }
- }
-
- // Output:
- // links:golang.org
- // Gophers!
- }
|