Documentation ¶
Overview ¶
Package internal contains functionality that is only accessible from within the Admin SDK.
Index ¶
- Variables
- func HasErrorCode(err error, code string) bool
- type AuthConfig
- type DatabaseConfig
- type ErrorParser
- type FirebaseError
- type HTTPClient
- type HTTPEntity
- type HTTPOption
- type HashConfig
- type InstanceIDConfig
- type MessagingConfig
- type MockTokenSource
- type Request
- type Response
- type StorageConfig
Constants ¶
This section is empty.
Variables ¶
var FirebaseScopes = []string{
"https://www.googleapis.com/auth/cloud-platform",
"https://www.googleapis.com/auth/datastore",
"https://www.googleapis.com/auth/devstorage.full_control",
"https://www.googleapis.com/auth/firebase",
"https://www.googleapis.com/auth/identitytoolkit",
"https://www.googleapis.com/auth/userinfo.email",
}
FirebaseScopes is the set of OAuth2 scopes used by the Admin SDK.
Functions ¶
func HasErrorCode ¶
HasErrorCode checks if the given error contain a specific error code.
Types ¶
type AuthConfig ¶
type AuthConfig struct { Opts []option.ClientOption Creds *google.DefaultCredentials ProjectID string ServiceAccountID string Version string }
AuthConfig represents the configuration of Firebase Auth service.
type DatabaseConfig ¶
type DatabaseConfig struct { Opts []option.ClientOption URL string Version string AuthOverride map[string]interface{} }
DatabaseConfig represents the configuration of Firebase Database service.
type ErrorParser ¶
ErrorParser is a function that is used to construct custom error messages.
type FirebaseError ¶
FirebaseError is an error type containing an error code string.
func Error ¶
func Error(code string, msg string) *FirebaseError
Error creates a new FirebaseError from the specified error code and message.
func Errorf ¶
func Errorf(code string, msg string, args ...interface{}) *FirebaseError
Errorf creates a new FirebaseError from the specified error code and message.
func (*FirebaseError) Error ¶
func (fe *FirebaseError) Error() string
type HTTPClient ¶
type HTTPClient struct { Client *http.Client ErrParser ErrorParser }
HTTPClient is a convenient API to make HTTP calls.
This API handles some of the repetitive tasks such as entity serialization and deserialization involved in making HTTP calls. It provides a convenient mechanism to set headers and query parameters on outgoing requests, while enforcing that an explicit context is used per request. Responses returned by HTTPClient can be easily parsed as JSON, and provide a simple mechanism to extract error details.
type HTTPEntity ¶
HTTPEntity represents a payload that can be included in an outgoing HTTP request.
func NewJSONEntity ¶
func NewJSONEntity(v interface{}) HTTPEntity
NewJSONEntity creates a new HTTPEntity that will be serialized into JSON.
type HTTPOption ¶
HTTPOption is an additional parameter that can be specified to customize an outgoing request.
func WithHeader ¶
func WithHeader(key, value string) HTTPOption
WithHeader creates an HTTPOption that will set an HTTP header on the request.
func WithQueryParam ¶
func WithQueryParam(key, value string) HTTPOption
WithQueryParam creates an HTTPOption that will set a query parameter on the request.
func WithQueryParams ¶
func WithQueryParams(qp map[string]string) HTTPOption
WithQueryParams creates an HTTPOption that will set all the entries of qp as query parameters on the request.
type HashConfig ¶
type HashConfig struct { HashAlgorithm string MemoryCost int64 Rounds int64 SaltSeparator string SignerKey string BlockSize int64 DerivedKeyLength int64 Parallelization int64 ForceSendFields []string }
HashConfig represents a hash algorithm configuration used to generate password hashes.
type InstanceIDConfig ¶
type InstanceIDConfig struct { Opts []option.ClientOption ProjectID string }
InstanceIDConfig represents the configuration of Firebase Instance ID service.
type MessagingConfig ¶
type MessagingConfig struct { Opts []option.ClientOption ProjectID string Version string }
MessagingConfig represents the configuration of Firebase Cloud Messaging service.
type MockTokenSource ¶
type MockTokenSource struct {
AccessToken string
}
MockTokenSource is a TokenSource implementation that can be used for testing.
type Request ¶
type Request struct { Method string URL string Body HTTPEntity Opts []HTTPOption }
Request contains all the parameters required to construct an outgoing HTTP request.
type Response ¶
type Response struct { Status int Header http.Header Body []byte // contains filtered or unexported fields }
Response contains information extracted from an HTTP response.
func (*Response) CheckStatus ¶
CheckStatus checks whether the Response status code has the given HTTP status code.
Returns an error if the status code does not match. If an ErroParser is specified, uses that to construct the returned error message. Otherwise includes the full response body in the error.
func (*Response) Unmarshal ¶
Unmarshal checks if the Response has the given HTTP status code, and if so unmarshals the response body into the variable pointed by v.
Unmarshal uses https://golang.org/pkg/encoding/json/#Unmarshal internally, and hence v has the same requirements as the json package.
type StorageConfig ¶
type StorageConfig struct { Opts []option.ClientOption Bucket string }
StorageConfig represents the configuration of Google Cloud Storage service.