appengine_internal

package
v0.0.0-...-26f7dc4 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 20, 2015 License: Apache-2.0 Imports: 23 Imported by: 0

Documentation

Overview

Package appengine_internal provides support for package appengine.

Programs should not use this package directly. Its API is not stable. Use packages appengine and appengine/* instead.

Index

Constants

This section is empty.

Variables

View Source
var NamespaceMods = make(map[string]func(m ProtoMessage, namespace string))

NamespaceMods is a map from API service to a function that will mutate an RPC request to attach a namespace. The function should be prepared to be called on the same message more than once; it should only modify the RPC request the first time.

Functions

func AppID

func AppID(fqai string) string

func ApplyTransaction

func ApplyTransaction(pb ProtoMessage, t *pb.Transaction)

ApplyTransaction applies the transaction t to message pb by using the relevant setter passed to RegisterTransactionSetter.

func BackendHostname

func BackendHostname(c apiContext, name string, index int) string

func BackendInstance

func BackendInstance() int

func Datacenter

func Datacenter() string

func DefaultVersionHostname

func DefaultVersionHostname(req interface{}) string

func InstanceID

func InstanceID() string

func IsDevAppServer

func IsDevAppServer() bool

IsDevAppServer returns whether the App Engine app is running in the development App Server.

func Main

func Main()

Main is designed so that the complete generated main.main package is:

package main

import (
	"path/to/appengine_internal"
	_ "myapp/package0"
	_ "myapp/package1"
)

func main() {
	appengine_internal.Main()
}

The "myapp/packageX" packages are expected to register HTTP handlers in their init functions.

func ModuleName

func ModuleName(req interface{}) string

func NewContext

func NewContext(req *http.Request) context

func RegisterAPIOverride

func RegisterAPIOverride(service, method string, f func(in, out ProtoMessage, opts *CallOptions) error)

func RegisterErrorCodeMap

func RegisterErrorCodeMap(service string, m map[int32]string)

RegisterErrorCodeMap is called from API implementations to register their error code map. This should only be called from init functions.

func RegisterTestContext

func RegisterTestContext(req *http.Request, c context) func()

RegisterTestContext associates a test context with the given HTTP request, returning a closure to delete the association. It should only be used by the aetest package, and never directly. It is only available in the SDK.

func RegisterTimeoutErrorCode

func RegisterTimeoutErrorCode(service string, code int32)

func RegisterTransactionSetter

func RegisterTransactionSetter(f interface{})

RegisterTransactionSetter registers a function that sets transaction information in a protocol buffer message. f should be a function with two arguments, the first being a protocol buffer type, and the second being *datastore.Transaction.

func RequestID

func RequestID(req interface{}) string

func ServerSoftware

func ServerSoftware() string

func VersionID

func VersionID(req interface{}) string

Types

type APIError

type APIError struct {
	Service string
	Detail  string
	Code    int32 // API-specific error code
}

APIError is the type returned by appengine.Context's Call method when an API call fails in an API-specific way. This may be, for instance, a taskqueue API call failing with TaskQueueServiceError::UNKNOWN_QUEUE.

func (*APIError) Error

func (e *APIError) Error() string

func (*APIError) IsTimeout

func (e *APIError) IsTimeout() bool

type CallError

type CallError struct {
	Detail string
	Code   int32
	// TODO: Remove this if we get a distinguishable error code.
	Timeout bool
}

CallError is the type returned by appengine.Context's Call method when an API call fails in a generic way, such as APIResponse::CAPABILITY_DISABLED.

func (*CallError) Error

func (e *CallError) Error() string

func (*CallError) IsTimeout

func (e *CallError) IsTimeout() bool

type CallOptions

type CallOptions struct {
	Timeout time.Duration // if non-zero, overrides RPC default
}

type ProtoMessage

type ProtoMessage interface {
	Reset()
	String() string
	ProtoMessage()
}

ProtoMessage is the same as proto.Message. It is defined here because user code cannot import package proto.

Directories

Path Synopsis
Package appengine is a generated protocol buffer package.
Package appengine is a generated protocol buffer package.
Package appengine_base is a generated protocol buffer package.
Package appengine_base is a generated protocol buffer package.
Package appengine is a generated protocol buffer package.
Package appengine is a generated protocol buffer package.
Package appengine is a generated protocol buffer package.
Package appengine is a generated protocol buffer package.
Package appengine is a generated protocol buffer package.
Package appengine is a generated protocol buffer package.
Package datastore is a generated protocol buffer package.
Package datastore is a generated protocol buffer package.
Package files is a generated protocol buffer package.
Package files is a generated protocol buffer package.
Package appengine is a generated protocol buffer package.
Package appengine is a generated protocol buffer package.
Package init provides initialization that must happen before any App Engine user code runs.
Package init provides initialization that must happen before any App Engine user code runs.
Package appengine is a generated protocol buffer package.
Package appengine is a generated protocol buffer package.
Package appengine is a generated protocol buffer package.
Package appengine is a generated protocol buffer package.
Package appengine is a generated protocol buffer package.
Package appengine is a generated protocol buffer package.
Package appengine is a generated protocol buffer package.
Package appengine is a generated protocol buffer package.
Package remote_api is a generated protocol buffer package.
Package remote_api is a generated protocol buffer package.
Package appengine_tools_devappserver2 is a generated protocol buffer package.
Package appengine_tools_devappserver2 is a generated protocol buffer package.
Package search is a generated protocol buffer package.
Package search is a generated protocol buffer package.
Package appengine is a generated protocol buffer package.
Package appengine is a generated protocol buffer package.
Package appengine is a generated protocol buffer package.
Package appengine is a generated protocol buffer package.
Package appengine is a generated protocol buffer package.
Package appengine is a generated protocol buffer package.
Package appengine is a generated protocol buffer package.
Package appengine is a generated protocol buffer package.
Package appengine is a generated protocol buffer package.
Package appengine is a generated protocol buffer package.
Package appengine is a generated protocol buffer package.
Package appengine is a generated protocol buffer package.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL