Documentation
¶
Index ¶
- Constants
- func FormatCode(code string) ([]byte, error)
- func GenInterface(comment, pkgName, ifaceName, ifaceComment string, methods []string, ...) ([]byte, error)
- func GenInterfaces(files []string, structType, comment, pkgName, ifaceName, ifaceComment string, ...) (result []byte, e error)
- func InspectFile(filePath string) (s *lib.GoStruct, e error)
- type Controller
- type ControllerRoute
- type ControllerRouteParam
- type ControllerRouteQuery
- type DocRoute
- type DocRouteParam
- type DocRouteQuery
- type Gen
- func (g *Gen) BuildControllerObjFromControllerFile(filePath string, src []byte) (controller *Controller, usesPerms bool, e error)
- func (g *Gen) BuildRoutesCodeFromController(controller *Controller) (out string, perms []string)
- func (g *Gen) BuildTypescriptPermissions() string
- func (g *Gen) CleanGoDALs(dir string, database *lib.Database) (e error)
- func (g *Gen) CleanGoModels(dir string, database *lib.Database) (e error)
- func (g *Gen) GenAPITests() (e error)
- func (g *Gen) GenMeta(dir string, database *lib.Database) (e error)
- func (g *Gen) GenRoutes() (e error)
- func (g *Gen) GenServiceTest(serviceName, filePath string) (e error)
- func (g *Gen) GenerateAPIRoutes(apiDir string)
- func (g *Gen) GenerateDALSQL(dir string, database *lib.Database) (e error)
- func (g *Gen) GenerateDALsBootstrapFile(dir string, database *lib.Database) (e error)
- func (g *Gen) GenerateGoAPI(dir string)
- func (g *Gen) GenerateGoApp(dir string) (e error)
- func (g *Gen) GenerateGoDAL(table *lib.Table, dir string) (e error)
- func (g *Gen) GenerateGoModel(dir string, table *lib.Table) (e error)
- func (g *Gen) GenerateServiceBootstrapFile(servicesDir string) (e error)
- func (g *Gen) GenerateServiceInterfaces(definitionsDir string, servicesDir string) (e error)
- func (g *Gen) GenerateTypescriptType(table *lib.Table) (goCode string, e error)
- func (g *Gen) GenerateTypescriptTypes(database *lib.Database) (goCode string, e error)
- func (g *Gen) GenerateTypescriptTypesFile(dir string, database *lib.Database) (e error)
- func (g *Gen) GetOrphanedDals(dir string, database *lib.Database) []string
- type RoutesJSONContainer
Constants ¶
const NullPackage = "\"gopkg.in/guregu/null.v3\""
NullPackage is the package name used for handling nulls
Variables ¶
This section is empty.
Functions ¶
func FormatCode ¶ added in v1.5.0
FormatCode formats the code
func GenInterface ¶ added in v1.5.0
func GenInterface(comment, pkgName, ifaceName, ifaceComment string, methods []string, imports []string) ([]byte, error)
GenInterface takes makes the interface into a byte array
Types ¶
type Controller ¶ added in v1.5.0
type Controller struct { Name string `json:"Name"` Description string `json:"Description"` Path string `json:"-"` Routes []*ControllerRoute `json:"Routes"` HasDTOsImport bool `json:"-"` HasResponseImport bool `json:"-"` }
Controller represents a REST controller
type ControllerRoute ¶ added in v1.5.0
type ControllerRoute struct { Name string `json:"Name"` Description string `json:"Description"` Raw string `json:"Path"` Path string `json:"-"` Method string `json:"Method"` Params []ControllerRouteParam `json:"Params"` Queries []ControllerRouteQuery `json:"Queries"` IsAuth bool `json:"IsAuth"` BodyType string `json:"BodyType"` BodyFormat string `json:"BodyFormat"` HasBody bool `json:"HasBody"` ResponseType string `json:"ResponseType"` ResponseFormat string `json:"ResponseFormat"` ResponseCode int `json:"ResponseCode"` Permission string `json:"Permission"` }
ControllerRoute represents a route inside a REST controller
type ControllerRouteParam ¶ added in v1.5.0
ControllerRouteParam represents a param inside a controller route
type ControllerRouteQuery ¶ added in v1.5.0
type ControllerRouteQuery struct { Name string Pattern string Type string VariableName string ValueRaw string }
ControllerRouteQuery represents a query inside a controller route
type DocRoute ¶ added in v1.5.0
type DocRoute struct { Name string Description string Method string Path string HasBody bool BodyType string BodyFormat string ResponseType string ResponseFormat string ResponseCode int }
DocRoute is a route in the documentation
type DocRouteParam ¶ added in v1.5.0
DocRouteParam represents a parameter inside a route for documentation
type DocRouteQuery ¶ added in v1.5.0
DocRouteQuery represents a query inside a route for documentation
type Gen ¶
Gen conntains all of the generator functionality
func (*Gen) BuildControllerObjFromControllerFile ¶ added in v1.5.0
func (g *Gen) BuildControllerObjFromControllerFile(filePath string, src []byte) (controller *Controller, usesPerms bool, e error)
BuildControllerObjFromControllerFile parses a file and extracts all of its @route comments
func (*Gen) BuildRoutesCodeFromController ¶ added in v1.5.0
func (g *Gen) BuildRoutesCodeFromController(controller *Controller) (out string, perms []string)
BuildRoutesCodeFromController builds controller code based on a route
func (*Gen) BuildTypescriptPermissions ¶ added in v1.5.0
BuildTypescriptPermissions returns a formatted typescript file of permission constants
func (*Gen) CleanGoDALs ¶ added in v1.4.0
CleanGoDALs removes any repo files that aren't in the database.Tables map
func (*Gen) CleanGoModels ¶ added in v1.4.0
CleanGoModels removes model files that are not found in the database.Tables map
func (*Gen) GenAPITests ¶ added in v1.5.3
GenAPITests generates api tests
func (*Gen) GenRoutes ¶ added in v1.5.0
GenRoutes generates a list of routes from a directory of controller files
func (*Gen) GenServiceTest ¶ added in v1.5.0
GenServiceTest generates a test for a service file
func (*Gen) GenerateAPIRoutes ¶ added in v1.4.0
func (*Gen) GenerateDALSQL ¶ added in v1.5.0
GenerateDALSQL generates a constants file filled with sql statements
func (*Gen) GenerateDALsBootstrapFile ¶ added in v1.4.0
GenerateDALsBootstrapFile generates a dal bootstrap file in golang
func (*Gen) GenerateGoAPI ¶ added in v1.4.0
func (*Gen) GenerateGoApp ¶ added in v1.4.0
GenerateGoApp generates the base app code
func (*Gen) GenerateGoDAL ¶ added in v1.4.0
GenerateGoDAL returns a string for a repo in golang
func (*Gen) GenerateGoModel ¶
GenerateGoModel returns a string for a model in golang
func (*Gen) GenerateServiceBootstrapFile ¶ added in v1.4.0
func (*Gen) GenerateServiceInterfaces ¶ added in v1.4.0
GenerateServiceInterfaces scans the services directory and outputs 2 files
- A services bootstrap file in the services directory
- A services definition file in the definitions directory
func (*Gen) GenerateTypescriptType ¶
GenerateTypescriptType returns a string for a type in typescript
func (*Gen) GenerateTypescriptTypes ¶
GenerateTypescriptTypes returns a string for a typscript types file
func (*Gen) GenerateTypescriptTypesFile ¶
GenerateTypescriptTypesFile generates a typescript type file
type RoutesJSONContainer ¶ added in v1.5.0
type RoutesJSONContainer struct { Routes map[string]*ControllerRoute `json:"routes"` DTOs map[string]map[string]string `json:"dtos"` Models map[string]map[string]string `json:"models"` Aggregates map[string]map[string]string `json:"aggregates"` Constants map[string][]string `json:"constants"` }
RoutesJSONContainer is a container for JSON Routes