be

package module
v0.4.0 Latest Latest
Warning

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

Go to latest
Published: Aug 28, 2023 License: Apache-2.0 Imports: 45 Imported by: 4

README

Go-Enjin

This package is the core of the Go-Enjin project and is named be mainly for artistic purposes. It can be thought of as an acronym with the b meaning "back" or "built" or whatever you like and the e meaning Enjin.

What is Enjin?

Enjin (noun), meaning an engine for doing things.

In the context of the Go-Enjin project, this is an engine for building servers and microservices.

Is it even a word?

No, the word enjin is not an actual word in any language, though it is an homage to Heroku (which is a really cool word and has its own backstory).

The word enjin consists of two main parts:

  • en, this was chosen for "English language", or "English speaking" (this must not to be confused with any countries, nationalities or personalities in any way)
  • jin, this was chosen for its roots in Japanese such as:
    • gaijin (meaning "foreigner" - which this author is) or
    • henjin (meaning "strange person" - which this author also is)

Author

LICENSE

All Go-Enjin projects are provided under the APACHE 2.0 license, as follows:

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.

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func GoEnjinPackageList

func GoEnjinPackageList() (list []string)

Types

type Enjin

type Enjin struct {
	// contains filtered or unexported fields
}

func (*Enjin) CheckMatchQL added in v0.1.0

func (e *Enjin) CheckMatchQL(query string) (pages []feature.Page, err error)

func (*Enjin) CheckMatchStubsQL added in v0.1.0

func (e *Enjin) CheckMatchStubsQL(query string) (stubs []*feature.PageStub, err error)

func (*Enjin) CheckSelectQL added in v0.1.0

func (e *Enjin) CheckSelectQL(query string) (selected map[string]interface{}, err error)

func (*Enjin) Connect added in v0.2.2

func (e *Enjin) Connect(signal signaling.Signal, handle string, l signaling.Listener, data ...interface{})

func (*Enjin) Consoles

func (e *Enjin) Consoles() (consoles map[feature.Tag]feature.Console)

func (*Enjin) ContentSecurityPolicy

func (e *Enjin) ContentSecurityPolicy() (handler *csp.PolicyHandler)

func (*Enjin) Context

func (e *Enjin) Context() (ctx context.Context)

func (*Enjin) DB

func (e *Enjin) DB(tag string) (db interface{}, err error)

func (*Enjin) Disconnect added in v0.2.2

func (e *Enjin) Disconnect(signal signaling.Signal, handle string)

func (*Enjin) Domains

func (e *Enjin) Domains() (domains []string)

func (*Enjin) Emit added in v0.2.2

func (e *Enjin) Emit(signal signaling.Signal, tag string, argv ...interface{}) (stopped bool)

func (*Enjin) Features

func (e *Enjin) Features() (cache *feature.FeaturesCache)

func (*Enjin) FindAllUserActions added in v0.2.0

func (e *Enjin) FindAllUserActions() (list feature.Actions)

func (*Enjin) FindEmailAccount added in v0.1.0

func (e *Enjin) FindEmailAccount(account string) (emailSender feature.EmailSender)

func (*Enjin) FindFile added in v0.1.0

func (e *Enjin) FindFile(path string) (data []byte, mime string, err error)

func (*Enjin) FindPage

func (e *Enjin) FindPage(tag language.Tag, url string) (p feature.Page)

func (*Enjin) FindPageStub added in v0.2.12

func (e *Enjin) FindPageStub(shasum string) (stub *feature.PageStub)

func (*Enjin) FindPages

func (e *Enjin) FindPages(prefix string) (pages []feature.Page)

func (*Enjin) FindRedirection

func (e *Enjin) FindRedirection(url string) (p feature.Page)

func (*Enjin) FindTranslations

func (e *Enjin) FindTranslations(url string) (pages []feature.Page)

func (*Enjin) GetFormat

func (e *Enjin) GetFormat(name string) (format feature.PageFormat)

func (*Enjin) GetPublicAccess added in v0.2.0

func (e *Enjin) GetPublicAccess() (actions feature.Actions)

func (*Enjin) GetTemplatePartial added in v0.4.0

func (e *Enjin) GetTemplatePartial(block, position, name string) (tmpl string, ok bool)

func (*Enjin) GetTheme

func (e *Enjin) GetTheme() (t feature.Theme, err error)

func (*Enjin) GetThemeRenderer added in v0.4.0

func (e *Enjin) GetThemeRenderer(ctx context.Context) (renderer feature.ThemeRenderer)

func (*Enjin) Headers

func (e *Enjin) Headers() (headers []headers.ModifyHeadersFn)

func (*Enjin) ListFormats added in v0.1.0

func (e *Enjin) ListFormats() (names []string)

func (*Enjin) ListTemplatePartials added in v0.4.0

func (e *Enjin) ListTemplatePartials(block, position string) (names []string)

func (*Enjin) MakeFuncMap added in v0.4.0

func (e *Enjin) MakeFuncMap(ctx context.Context) (fm feature.FuncMap)

func (*Enjin) MatchFormat

func (e *Enjin) MatchFormat(filename string) (format feature.PageFormat, match string)

func (*Enjin) MatchQL

func (e *Enjin) MatchQL(query string) (pages []feature.Page)

func (*Enjin) MatchStubsQL

func (e *Enjin) MatchStubsQL(query string) (stubs []*feature.PageStub)

func (*Enjin) MustDB

func (e *Enjin) MustDB(tag string) (db interface{})

func (*Enjin) MustGetTheme added in v0.1.0

func (e *Enjin) MustGetTheme() (t feature.Theme)

func (*Enjin) MustSpecificDB

func (e *Enjin) MustSpecificDB(fTag feature.Tag, tag string) (db interface{})

func (*Enjin) Notify

func (e *Enjin) Notify(tag string)

func (*Enjin) NotifyF

func (e *Enjin) NotifyF(tag, format string, argv ...interface{})

func (*Enjin) Pages

func (e *Enjin) Pages() (pages map[string]feature.Page)

func (*Enjin) PermissionsPolicy

func (e *Enjin) PermissionsPolicy() (handler *permissions.PolicyHandler)

func (*Enjin) Prefix

func (e *Enjin) Prefix() (prefix string)

func (*Enjin) Processors

func (e *Enjin) Processors() (processors map[string]feature.ReqProcessFn)

func (*Enjin) PublicFileSystems added in v0.4.0

func (e *Enjin) PublicFileSystems() (registry fs.Registry)

func (*Enjin) Router

func (e *Enjin) Router() (router *chi.Mux)

func (*Enjin) Run

func (e *Enjin) Run(argv []string) (err error)

func (*Enjin) SelectQL

func (e *Enjin) SelectQL(query string) (selected map[string]interface{})

func (*Enjin) Self

func (e *Enjin) Self() (self interface{})

func (*Enjin) SendEmail added in v0.1.0

func (e *Enjin) SendEmail(account string, message *gomail.Message) (err error)

func (*Enjin) Serve204

func (e *Enjin) Serve204(w http.ResponseWriter, r *http.Request)

func (*Enjin) Serve400 added in v0.2.2

func (e *Enjin) Serve400(w http.ResponseWriter, r *http.Request)

func (*Enjin) Serve401

func (e *Enjin) Serve401(w http.ResponseWriter, r *http.Request)

func (*Enjin) Serve403

func (e *Enjin) Serve403(w http.ResponseWriter, r *http.Request)

func (*Enjin) Serve404

func (e *Enjin) Serve404(w http.ResponseWriter, r *http.Request)

func (*Enjin) Serve405

func (e *Enjin) Serve405(w http.ResponseWriter, r *http.Request)

func (*Enjin) Serve500

func (e *Enjin) Serve500(w http.ResponseWriter, r *http.Request)

func (*Enjin) ServeBasic401

func (e *Enjin) ServeBasic401(w http.ResponseWriter, r *http.Request)

func (*Enjin) ServeData

func (e *Enjin) ServeData(data []byte, mime string, w http.ResponseWriter, r *http.Request)

func (*Enjin) ServeInternalServerError

func (e *Enjin) ServeInternalServerError(w http.ResponseWriter, r *http.Request)

func (*Enjin) ServeJSON added in v0.2.0

func (e *Enjin) ServeJSON(v interface{}, w http.ResponseWriter, r *http.Request) (err error)

func (*Enjin) ServeNotFound

func (e *Enjin) ServeNotFound(w http.ResponseWriter, r *http.Request)

func (*Enjin) ServePage

func (e *Enjin) ServePage(p feature.Page, w http.ResponseWriter, r *http.Request) (err error)

func (*Enjin) ServePath

func (e *Enjin) ServePath(urlPath string, w http.ResponseWriter, r *http.Request) (err error)

func (*Enjin) ServeRedirect

func (e *Enjin) ServeRedirect(destination string, w http.ResponseWriter, r *http.Request)

func (*Enjin) ServeStatusJSON added in v0.2.2

func (e *Enjin) ServeStatusJSON(status int, v interface{}, w http.ResponseWriter, r *http.Request) (err error)

func (*Enjin) ServeStatusPage

func (e *Enjin) ServeStatusPage(status int, w http.ResponseWriter, r *http.Request)

func (*Enjin) ServerName

func (e *Enjin) ServerName() (name string)

func (*Enjin) ServiceInfo

func (e *Enjin) ServiceInfo() (scheme, listen string, port int)

func (*Enjin) SetupRootEnjin

func (e *Enjin) SetupRootEnjin(ctx *cli.Context) (err error)

func (*Enjin) Shutdown

func (e *Enjin) Shutdown()

func (*Enjin) SiteDefaultLanguage

func (e *Enjin) SiteDefaultLanguage() (tag language.Tag)

func (*Enjin) SiteLangCatalog

func (e *Enjin) SiteLangCatalog() (c *pkgLangCatalog.Catalog)

func (*Enjin) SiteLanguageCatalog

func (e *Enjin) SiteLanguageCatalog() (c catalog.Catalog)

func (*Enjin) SiteLanguageDisplayName

func (e *Enjin) SiteLanguageDisplayName(tag language.Tag) (name string, ok bool)

func (*Enjin) SiteLanguageMode

func (e *Enjin) SiteLanguageMode() (mode lang.Mode)

func (*Enjin) SiteLocales

func (e *Enjin) SiteLocales() (locales []language.Tag)

func (*Enjin) SiteName

func (e *Enjin) SiteName() (name string)

func (*Enjin) SiteSupportsLanguage

func (e *Enjin) SiteSupportsLanguage(tag language.Tag) (supported bool)

func (*Enjin) SiteTag

func (e *Enjin) SiteTag() (tag string)

func (*Enjin) SiteTagLine

func (e *Enjin) SiteTagLine() (tagLine string)

func (*Enjin) Slugsums

func (e *Enjin) Slugsums() (enabled bool)

func (*Enjin) SpecificDB

func (e *Enjin) SpecificDB(fTag feature.Tag, tag string) (db interface{}, err error)

func (*Enjin) StartupString

func (e *Enjin) StartupString() string

func (*Enjin) String

func (e *Enjin) String() string

func (*Enjin) Theme

func (e *Enjin) Theme() (theme string)

func (*Enjin) ThemeNames

func (e *Enjin) ThemeNames() (names []string)

func (*Enjin) Theming

func (e *Enjin) Theming() (theming map[string]feature.Theme)

func (*Enjin) Transformers

func (e *Enjin) Transformers() (transformers map[string]feature.TransformOutputFn)

func (*Enjin) TranslateShortcodes added in v0.4.0

func (e *Enjin) TranslateShortcodes(content string, ctx context.Context) (modified string)

func (*Enjin) Translators

func (e *Enjin) Translators() (translators map[string]feature.TranslateOutputFn)

type EnjinBuilder

type EnjinBuilder struct {
	// contains filtered or unexported fields
}

func New

func New() (be *EnjinBuilder)

func (*EnjinBuilder) AddCommands

func (eb *EnjinBuilder) AddCommands(commands ...*cli.Command) feature.Builder

func (*EnjinBuilder) AddConsole

func (eb *EnjinBuilder) AddConsole(c feature.Console) feature.Builder

func (*EnjinBuilder) AddDomains

func (eb *EnjinBuilder) AddDomains(domains ...string) feature.Builder

func (*EnjinBuilder) AddFeature

func (eb *EnjinBuilder) AddFeature(f feature.Feature) feature.Builder

func (*EnjinBuilder) AddFlags

func (eb *EnjinBuilder) AddFlags(flags ...cli.Flag) feature.Builder

func (*EnjinBuilder) AddHtmlHeadTag

func (eb *EnjinBuilder) AddHtmlHeadTag(name string, attr map[string]string) feature.Builder

func (*EnjinBuilder) AddModifyHeadersFn

func (eb *EnjinBuilder) AddModifyHeadersFn(fn headers.ModifyHeadersFn) feature.Builder

func (*EnjinBuilder) AddNotifyHook

func (eb *EnjinBuilder) AddNotifyHook(name string, hook feature.NotifyHook) feature.Builder

func (*EnjinBuilder) AddOutputTransformer

func (eb *EnjinBuilder) AddOutputTransformer(mime string, filter feature.TransformOutputFn) feature.Builder

func (*EnjinBuilder) AddOutputTranslator

func (eb *EnjinBuilder) AddOutputTranslator(mime string, filter feature.TranslateOutputFn) feature.Builder

func (*EnjinBuilder) AddPageFromString

func (eb *EnjinBuilder) AddPageFromString(path, raw string) feature.Builder

func (*EnjinBuilder) AddPreset added in v0.4.0

func (eb *EnjinBuilder) AddPreset(presets ...feature.Preset) feature.Builder

func (*EnjinBuilder) AddRouteProcessor

func (eb *EnjinBuilder) AddRouteProcessor(route string, processor feature.ReqProcessFn) feature.Builder

func (*EnjinBuilder) AddTheme

func (eb *EnjinBuilder) AddTheme(t feature.Theme) feature.Builder

func (*EnjinBuilder) AddUserAction added in v0.2.1

func (eb *EnjinBuilder) AddUserAction(actions ...feature.Action) feature.Builder

func (*EnjinBuilder) Build

func (eb *EnjinBuilder) Build() feature.Runner

func (*EnjinBuilder) HotReload

func (eb *EnjinBuilder) HotReload(enabled bool) feature.Builder

func (*EnjinBuilder) IgnoreSlugsums

func (eb *EnjinBuilder) IgnoreSlugsums() *EnjinBuilder

func (*EnjinBuilder) IncludeEnjin

func (eb *EnjinBuilder) IncludeEnjin(enjins ...*EnjinBuilder) feature.Builder

func (*EnjinBuilder) MakeEnvKey

func (eb *EnjinBuilder) MakeEnvKey(name string) (key string)

func (*EnjinBuilder) MakeEnvKeys

func (eb *EnjinBuilder) MakeEnvKeys(names ...string) (keys []string)

func (*EnjinBuilder) PrependFeature added in v0.4.0

func (eb *EnjinBuilder) PrependFeature(f feature.Feature) feature.Builder

func (*EnjinBuilder) RegisterPublicFileSystem added in v0.4.0

func (eb *EnjinBuilder) RegisterPublicFileSystem(mount string, filesystems ...fs.FileSystem)

func (*EnjinBuilder) RegisterTemplatePartial added in v0.4.0

func (eb *EnjinBuilder) RegisterTemplatePartial(block, position, name, tmpl string) (err error)

func (*EnjinBuilder) Set

func (eb *EnjinBuilder) Set(key string, value interface{}) feature.Builder

func (*EnjinBuilder) SetPublicAccess added in v0.2.0

func (eb *EnjinBuilder) SetPublicAccess(actions ...feature.Action) feature.Builder

func (*EnjinBuilder) SetStatusPage

func (eb *EnjinBuilder) SetStatusPage(status int, path string) feature.Builder

func (*EnjinBuilder) SetTheme

func (eb *EnjinBuilder) SetTheme(name string) feature.Builder

func (*EnjinBuilder) SiteCopyrightName

func (eb *EnjinBuilder) SiteCopyrightName(name string) feature.Builder

func (*EnjinBuilder) SiteCopyrightNotice

func (eb *EnjinBuilder) SiteCopyrightNotice(notice string) feature.Builder

func (*EnjinBuilder) SiteDefaultLanguage

func (eb *EnjinBuilder) SiteDefaultLanguage(tag language.Tag) feature.Builder

func (*EnjinBuilder) SiteLanguageDisplayNames

func (eb *EnjinBuilder) SiteLanguageDisplayNames(names map[language.Tag]string) feature.Builder

func (*EnjinBuilder) SiteLanguageMode

func (eb *EnjinBuilder) SiteLanguageMode(mode lang.Mode) feature.Builder

func (*EnjinBuilder) SiteName

func (eb *EnjinBuilder) SiteName(name string) feature.Builder

func (*EnjinBuilder) SiteSupportedLanguages

func (eb *EnjinBuilder) SiteSupportedLanguages(tags ...language.Tag) feature.Builder

func (*EnjinBuilder) SiteTag

func (eb *EnjinBuilder) SiteTag(tag string) feature.Builder

func (*EnjinBuilder) SiteTagLine

func (eb *EnjinBuilder) SiteTagLine(tagLine string) feature.Builder

Directories

Path Synopsis
features
pkg
cli
cmp
fs
gob
kvs
log
net
presets
types

Jump to

Keyboard shortcuts

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