Versions in this module Expand all Collapse all v9 v9.1.0 Jan 26, 2024 v9.0.0 Oct 27, 2023 Changes in this version + const ErrorAuthJWTInvalid + const ErrorAuthNoUser + const ErrorCastingID + const ErrorCollectionNotInRequest + const ErrorCreatingDir + const ErrorCreatingFile + const ErrorCreatingRepo + const ErrorDbDelete + const ErrorDbSave + const ErrorFileNotFound + const ErrorFileTree + const ErrorForm + const ErrorFormDuplicateFile + const ErrorFormDuplicateModelName + const ErrorFormDuplicateWorldName + const ErrorFormInvalidValue + const ErrorFormMissingFiles + const ErrorIDNotFound + const ErrorIDNotInRequest + const ErrorIDWrongFormat + const ErrorInvalidPaginationRequest + const ErrorInvalidSimulationStatus + const ErrorK8Create + const ErrorK8Delete + const ErrorLaunchGazebo + const ErrorLaunchingCloudInstance + const ErrorLaunchingCloudInstanceNotEnoughResources + const ErrorMarshalJSON + const ErrorMarshalProto + const ErrorMissingField + const ErrorModelNotInRequest + const ErrorNameNotFound + const ErrorNameWrongFormat + const ErrorNoDatabase + const ErrorNonExistentResource + const ErrorOwnerNotInRequest + const ErrorPaginationPageNotFound + const ErrorPayloadEmpty + const ErrorQueueEmpty + const ErrorQueueIndexOutOfBounds + const ErrorQueueInternalChannelClosed + const ErrorQueueMoveIndexBackPosition + const ErrorQueueMoveIndexFrontPosition + const ErrorQueueSwapIndexesMatch + const ErrorQueueTooManyListeners + const ErrorRemovingDir + const ErrorRepo + const ErrorResourceExists + const ErrorScheduler + const ErrorShutdownGazebo + const ErrorSimGroupNotFound + const ErrorStoppingCloudInstance + const ErrorUnauthorized + const ErrorUnexpected + const ErrorUnexpectedID + const ErrorUnknownSuffix + const ErrorUnmarshalJSON + const ErrorUnzipping + const ErrorUserNotInRequest + const ErrorUserUnknown + const ErrorVersionNotFound + const ErrorWorldNotInRequest + const ErrorZipNotAvailable + const VerbosityCritical + const VerbosityDebug + const VerbosityError + const VerbosityInfo + const VerbosityWarning + const WaitForNextElementChanCapacity + var AuthHeadersOptional = []Header + var AuthHeadersRequired = []Header + func Bool(v bool) *bool + func Close(c io.Closer) + func CopyDir(dst, src string) error + func CopyFile(dst string, src string) error + func CreateJWTOptionalMiddleware(s *Server) negroni.HandlerFunc + func CreateJWTRequiredMiddleware(s *Server) negroni.HandlerFunc + func Float64(v float64) *float64 + func GetUserIdentity(r *http.Request) (identity string, ok bool) + func InitDbWithCfg(cfg *DatabaseConfig) (*gorm.DB, error) + func Int(v int) *int + func Int64(v int64) *int64 + func IsBotHandler(botHandler http.Handler, userHandler http.Handler) http.Handler + func IsDirEmpty(path string) (bool, error) + func IsError(err error, target error) bool + func IsSQLTxError(err error) bool + func Max(x, y int) int + func Min(x, y int) int + func NewContextWithLogger(ctx context.Context, logger Logger) context.Context + func NewDateTime(t time.Time) *datetime.DateTime + func NewMoney(currency string, cents int64) *money.Money + func NewPaginationRequest(r *http.Request) (*PaginationRequest, *ErrMsg) + func NewRouter() *mux.Router + func ParseHTMLTemplate(templateFilename string, data interface{}) (string, error) + func ParseTemplate(templateFilename string, data interface{}) (string, error) + func ParseURL(raw string) (*url.URL, error) + func RandomString(strlen int) string + func ReadEnvVar(name string) (string, error) + func ReadLogVerbosityEnvVar() int + func ReadRollbarLogVerbosityEnvVar() int + func ReadStdLogEnvVar() bool + func RemoveIfFound(path string) error + func SameElements(a0, b0 []string) bool + func SendEmail(sender, recipient, subject, body string) error + func StrToSlice(tagsStr string) []string + func String(v string) *string + func StringSlice(src []string) []*string + func Trace(skip int) string + func Unzip(buff bytes.Buffer, size int64, dest string, verbose bool) error + func UnzipFile(zipfile string, dest string, verbose bool) error + func UnzipImpl(reader *zip.Reader, dest string, verbose bool) error + func ValidateAccessToken(token string, tx *gorm.DB) (*AccessToken, *ErrMsg) + func ValidateURL(u *url.URL) error + func WithStack(base error) error + func WritePaginationHeaders(page PaginationResult, w http.ResponseWriter, r *http.Request) error + func Zip(dst, src string) (*os.File, error) + type AccessToken struct + CreatedAt time.Time + Expires *time.Time + ID uint + Key string + LastUsed *time.Time + Name string + Prefix string + UserID uint + type AccessTokenCreateRequest struct + Name string + func (createReq *AccessTokenCreateRequest) Create(tx *gorm.DB) (*AccessTokenCreateResponse, *AccessToken, *ErrMsg) + type AccessTokenCreateResponse struct + Key string + Name string + Prefix string + type AccessTokens []AccessToken + type DatabaseConfig struct + Address string + EnableLog bool + MaxOpenConns int + Name string + Password string + UserName string + func NewDatabaseConfigFromEnvVars() (DatabaseConfig, error) + type Detail struct + Description string + Required bool + Type string + type ErrMsg struct + BaseError error + ErrCode int + ErrID string + Extra []string + Msg string + RemoteAddress string + Route string + StatusCode int + UserAgent string + func ErrorMessage(err int64) ErrMsg + func ErrorMessageOK() ErrMsg + func NewErrorMessage(err int64) *ErrMsg + func NewErrorMessageWithArgs(err int64, base error, extra []string) *ErrMsg + func NewErrorMessageWithBase(err int64, base error) *ErrMsg + func (e *ErrMsg) LogString() string + type FormatHandler struct + Extension string + Handler http.Handler + type FormatHandlers []FormatHandler + type Handler func(*gorm.DB, http.ResponseWriter, *http.Request) *ErrMsg + func (fn Handler) ServeHTTP(w http.ResponseWriter, r *http.Request) + type HandlerWithResult func(tx *gorm.DB, w http.ResponseWriter, r *http.Request) (interface{}, *ErrMsg) + type Header struct + HeaderDetails Detail + Name string + type JWTMiddlewareIgn struct + func (m *JWTMiddlewareIgn) AccessTokenHandler(w http.ResponseWriter, r *http.Request, next http.HandlerFunc) + type Logger interface + Clone func(reqID string) Logger + Critical func(interfaces ...interface{}) + Debug func(interfaces ...interface{}) + Error func(interfaces ...interface{}) + Info func(interfaces ...interface{}) + Warning func(interfaces ...interface{}) + func LoggerFromContext(ctx context.Context) Logger + func LoggerFromRequest(r *http.Request) Logger + func NewLogger(reqID string, std bool, verbosity int) Logger + func NewLoggerNoRollbar(reqID string, verbosity int) Logger + func NewLoggerWithRollbarVerbosity(reqID string, std bool, verbosity, rollbarVerbosity int) Logger + type Method struct + Description string + Handlers FormatHandlers + Type string + type Methods []Method + type PaginationRequest struct + Page int + PageRequested bool + PerPage int + URL string + type PaginationResult struct + Page int + PageFound bool + PerPage int + QueryCount int64 + URL string + func PaginateQuery(q *gorm.DB, result interface{}, p PaginationRequest) (*PaginationResult, error) + type ProtoResult HandlerWithResult + func (fn ProtoResult) ServeHTTP(w http.ResponseWriter, r *http.Request) + type Queue struct + func NewQueue() (queue *Queue) + func (st *Queue) Dequeue() (interface{}, *ErrMsg) + func (st *Queue) DequeueOrWaitForNextElement() (interface{}, *ErrMsg) + func (st *Queue) Enqueue(value interface{}) + func (st *Queue) Find(criteria func(element interface{}) bool) []int + func (st *Queue) FindByIDs(ids []int) []interface{} + func (st *Queue) FindOne(target interface{}) int + func (st *Queue) GetCap() int + func (st *Queue) GetElement(index int) (interface{}, *ErrMsg) + func (st *Queue) GetElements() ([]interface{}, *ErrMsg) + func (st *Queue) GetFilteredElements(offset, limit int) ([]interface{}, *ErrMsg) + func (st *Queue) GetLen() int + func (st *Queue) MoveToBack(target interface{}) *ErrMsg + func (st *Queue) MoveToFront(target interface{}) *ErrMsg + func (st *Queue) Remove(target interface{}) *ErrMsg + func (st *Queue) Swap(a interface{}, b interface{}) *ErrMsg + type Repository interface + Add func(entity interface{}) (interface{}, *ErrMsg) + Clear func() *ErrMsg + Count func(criteria func(element interface{}) bool) int + Find func(criteria func(element interface{}) bool) ([]interface{}, *ErrMsg) + FindByIDs func(ids []interface{}) ([]interface{}, *ErrMsg) + FindOne func(criteria func(element interface{}) bool) (interface{}, *ErrMsg) + Get func(id interface{}) (interface{}, *ErrMsg) + GetAll func(offset, limit *int) ([]interface{}, *ErrMsg) + Remove func(id interface{}) (interface{}, *ErrMsg) + Update func(id interface{}, entity interface{}) (interface{}, *ErrMsg) + type Route struct + Description string + Headers []Header + Methods Methods + Name string + SecureMethods SecureMethods + URI string + type RouterConfigurer struct + func NewRouterConfigurer(r *mux.Router, monitoring monitoring.Provider) *RouterConfigurer + func (rc *RouterConfigurer) ConfigureRouter(pathPrefix string, routes Routes) *RouterConfigurer + func (rc *RouterConfigurer) SetAuthHandlers(optionalJWT, requiredJWT negroni.HandlerFunc) *RouterConfigurer + func (rc *RouterConfigurer) SetCustomHandlers(handlers ...negroni.Handler) *RouterConfigurer + type Routes []Route + type SecureMethods []Method + type Server struct + Db *gorm.DB + DbConfig DatabaseConfig + GaAppName string + GaCategoryPrefix string + GaTrackingID string + HTTPPort string + IsTest bool + LogToStd bool + LogVerbosity int + RollbarLogVerbosity int + Router *mux.Router + SSLCert string + SSLKey string + SSLport string + UsersDb *gorm.DB + func Init(auth0RSAPublicKey string, dbNameSuffix string, monitoring monitoring.Provider) (server *Server, err error) + func (s *Server) Auth0RsaPublicKey() string + func (s *Server) ConfigureRouterWithRoutes(pathPrefix string, router *mux.Router, routes Routes) + func (s *Server) IsUsingSSL() bool + func (s *Server) Run() + func (s *Server) SetAuth0RsaPublicKey(key string) + func (s *Server) SetRouter(router *mux.Router) *Server + type TypeJSONResult struct + func JSONListResult(wrapper string, handler HandlerWithResult) TypeJSONResult + func JSONResult(handler HandlerWithResult) TypeJSONResult + func JSONResultNoTx(handler HandlerWithResult) TypeJSONResult + func (t TypeJSONResult) ServeHTTP(w http.ResponseWriter, r *http.Request) Other modules containing this package github.com/gazebo-web/gz-go/v10 github.com/gazebo-web/gz-go/v7 github.com/gazebo-web/gz-go/v8