Beispiel #1
0
func ExampleFirebase_OrderBy() {
	fb := firego.New("https://someapp.firebaseio.com", nil)
	// Set value
	fb = fb.OrderBy("a")
	// Remove query parameter
	fb = fb.OrderBy("")
}
Beispiel #2
0
func ExampleFirebase_Shallow() {
	fb := firego.New("https://someapp.firebaseio.com", nil)
	// Set value
	fb.Shallow(true)
	// Remove query parameter
	fb.Shallow(false)
}
Beispiel #3
0
// Connect to Firebase
func connectFirebase() {
	uri := readUri()

	log.Printf("Connecting to %s", uri)

	Firebase = firego.New(uri, nil)
}
Beispiel #4
0
func ExampleFirebase_LimitToLast() {
	fb := firego.New("https://someapp.firebaseio.com", nil)
	// Set value
	fb = fb.LimitToLast(8)
	// Remove query parameter
	fb = fb.LimitToLast(-1)
}
Beispiel #5
0
func ExampleFirebase_IncludePriority() {
	fb := firego.New("https://someapp.firebaseio.com", nil)
	// Set value
	fb.IncludePriority(true)
	// Remove query parameter
	fb.IncludePriority(false)
}
Beispiel #6
0
func ExampleFirebase_Push() {
	fb := firego.New("https://someapp.firebaseio.com", nil)
	newRef, err := fb.Push("my-value")
	if err != nil {
		log.Fatal(err)
	}

	log.Printf("My new ref %s\n", newRef)
}
Beispiel #7
0
func ExampleFirebase_Value() {
	fb := firego.New("https://someapp.firebaseio.com/some/value", nil)
	var v interface{}
	if err := fb.Value(v); err != nil {
		log.Fatal(err)
	}

	log.Printf("My value %v\n", v)
}
Beispiel #8
0
func ExampleFirebase_Set() {
	fb := firego.New("https://someapp.firebaseio.com", nil)

	v := map[string]interface{}{
		"foo": "bar",
		"bar": 1,
		"bez": []string{"hello", "world"},
	}
	if err := fb.Set(v); err != nil {
		log.Fatal(err)
	}
}
Beispiel #9
0
func ExampleFirebase_StopWatching() {
	fb := firego.New("https://someapp.firebaseio.com/some/value", nil)
	notifications := make(chan firego.Event)
	if err := fb.Watch(notifications); err != nil {
		log.Fatal(err)
	}

	go func() {
		for range notifications {
		}
		log.Println("Channel closed")
	}()
	time.Sleep(10 * time.Millisecond) // let go routine start

	fb.StopWatching()
}
Beispiel #10
0
func ExampleFirebase_Watch() {
	fb := firego.New("https://someapp.firebaseio.com/some/value", nil)
	notifications := make(chan firego.Event)
	if err := fb.Watch(notifications); err != nil {
		log.Fatal(err)
	}

	for event := range notifications {
		log.Println("Event Received")
		log.Printf("Type: %s\n", event.Type)
		log.Printf("Path: %s\n", event.Path)
		log.Printf("Data: %v\n", event.Data)
		if event.Type == firego.EventTypeError {
			log.Print("Error occurred, loop ending")
		}
	}
}
Beispiel #11
0
func init() {

	viper.SetConfigName("config") // 設定ファイル名を拡張子抜きで指定する
	viper.AddConfigPath(".")      // 現在のワーキングディレクトリを探索することもできる
	err := viper.ReadInConfig()   // 設定ファイルを探索して読み取る
	if err != nil {               // 設定ファイルの読み取りエラー対応
		panic(fmt.Errorf("設定ファイル読み込みエラー: %s \n", err))
	}

	firebase := firego.New(viper.GetString("url"), nil)
	firebase.Auth(viper.GetString("token"))
	if err := firebase.Value(&v); err != nil {
		log.Fatal(err)
	}
	fmt.Printf("%s\n", v)
	fmt.Printf("%v\n", v["tv"])
}
Beispiel #12
0
func main() {
	var pathToRunner string
	flag.StringVar(&pathToRunner, "runner", os.Getenv("RUNNER_BINARY"), "path to runner binary")
	flag.Parse()
	runner := code.NewRunner(pathToRunner)

	fb := firego.New("https://thinkhike.firebaseio.com/problems", nil)
	problems := map[string]string{}

	if err := fb.Value(&problems); err != nil {
		log.Fatal(err)
	}
	fmt.Printf("%s\n", problems)
	if runner != nil && false {
	}
	ec := code.GistFetch(problems["prob-1"])
	fmt.Printf("%#v", ec)
}
func firebase(ctx context.Context) (*firego.Firebase, error) {
	hc, err := google.DefaultClient(ctx,
		"https://www.googleapis.com/auth/firebase.database",
		"https://www.googleapis.com/auth/userinfo.email",
	)
	if err != nil {
		return nil, err
	}
	base := os.Getenv("FIREBASE_BASE")
	if base == "" || strings.Contains(base, "YOUR-PROJECT-ID") {
		// Check the environment variable for the base firebase URL.
		//
		// The config should look like:
		//
		// env_variables:
		//    FIREBASE_BASE: https://app-id.firebaseio.com
		//
		return nil, errors.New("Unset FIREBASE_BASE environment variable.")
	}
	return firego.New(base, hc), nil
}
Beispiel #14
0
func ExampleFirebase_Update() {
	fb := firego.New("https://someapp.firebaseio.com/some/value", nil)
	if err := fb.Update("new-value"); err != nil {
		log.Fatal(err)
	}
}
Beispiel #15
0
func ExampleFirebase_Auth() {
	fb := firego.New("https://someapp.firebaseio.com", nil)
	fb.Auth("my-token")
}
Beispiel #16
0
func ExampleFirebase_Remove() {
	fb := firego.New("https://someapp.firebaseio.com/some/value", nil)
	if err := fb.Remove(); err != nil {
		log.Fatal(err)
	}
}
Beispiel #17
0
func ExampleFirebase_Child() {
	fb := firego.New("https://someapp.firebaseio.com", nil)
	childFB := fb.Child("some/child/path")

	log.Printf("My new ref %s\n", childFB)
}