Documentation ¶
Index ¶
- func Export(model *sadl.Model, dir string, conf *sadl.Data) error
- type ClientData
- type Generator
- func (gen *Generator) ActionInfo(hact *sadl.HttpDef) (string, string)
- func (gen *Generator) ActionName(hact *sadl.HttpDef) string
- func (gen *Generator) AddImport(fullReference string)
- func (gen *Generator) CreateClient()
- func (gen *Generator) CreateClientConfig()
- func (gen *Generator) CreateClientDataAndFuncMap(src, rez string)
- func (gen *Generator) CreateEnumPojo(ts *sadl.TypeSpec, className string)
- func (gen *Generator) CreateInstantJson()
- func (gen *Generator) CreateInterface()
- func (gen *Generator) CreateJavaFileFromTemplate(name string, tmpl string, data interface{}, funcMap template.FuncMap, ...)
- func (gen *Generator) CreateModel()
- func (gen *Generator) CreatePojo(ts *sadl.TypeSpec, className, comment string, exceptions map[string]string)
- func (gen *Generator) CreatePojoFromDef(td *sadl.TypeDef, exceptions map[string]string)
- func (gen *Generator) CreatePom(extraDepends string)
- func (gen *Generator) CreateRequestPojo(hact *sadl.HttpDef)
- func (gen *Generator) CreateResponsePojo(hact *sadl.HttpDef)
- func (gen *Generator) CreateServer()
- func (gen *Generator) CreateServerDataAndFuncMap(src, rez string)
- func (gen *Generator) CreateStructPojo(ts *sadl.TypeSpec, className string, indent string, ...)
- func (gen *Generator) CreateTimestamp()
- func (gen *Generator) CreateUnionPojo(td *sadl.TypeSpec, className string)
- func (gen *Generator) CreateUnitValuePojo(ts *sadl.TypeSpec, className string)
- func (gen *Generator) CreateUtil()
- func (gen *Generator) EmitAllFieldsConstructor(className string, ts *sadl.TypeSpec, indent string)
- func (gen *Generator) EmitBuilder(className string, ts *sadl.TypeSpec, indent string)
- func (gen *Generator) EmitFluidSetter(className string, ts *sadl.TypeSpec, fd *sadl.StructFieldDef, indent string)
- func (gen *Generator) EmitGetter(className string, ts *sadl.TypeSpec, fd *sadl.StructFieldDef, indent string)
- func (gen *Generator) EnsurePackageDir(pkg string)
- func (gen *Generator) ExceptionTypes() map[string]string
- func (gen *Generator) RequestType(name string) string
- func (gen *Generator) ResponseType(name string) string
- func (gen *Generator) TypeName(ts *sadl.TypeSpec, name string, required bool) (string, []string, *sadl.TypeSpec)
- func (gen *Generator) WriteJavaFile(name string, content string, pkg string)
- type ServerData
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
Types ¶
type ClientData ¶
type Generator ¶
type Generator struct { sadl.Generator Model *sadl.Model Domain string //the default DNS domain. Used when generating a POM, defaults to getenv("DOMAIN") Name string //the name of the service, if not in the model Package string //the package of the service. Defaults to the reverse domain name ModelPackage string ServerPackage string ClientPackage string Header string //the banner to prepend to every generated file. Defaults to something obvious and simple SourceDir string //the source directory, relative to the project directory. Defaults to "src/main/java" ResourceDir string //the resource directory, relative to the project directory. Defaults to "src/main/resource" UseLombok bool //use the Lombok library for generated POJOs. The default is to not. UseImmutable bool //generate immutable POJOs with a builder inner class UseGetters bool //generate getters and setters for POJOs. By default, a fluid-style setter and public members are used UseInstants bool //use java.time.Instant for Timestamp implementation. By default, a Timestamp class is generated UseJsonPretty bool //generate a toString() method that pretty prints JSON. UseMaven bool //use Maven defaults, and generate a pom.xml file for the project to immedaitely build it. ModelCode bool //generate model code ServerCode bool //generate server code ServerImpl bool //generate a default (but empty) implementation of the service interface ClientCode bool //generate client code ServiceException bool //generate a generic ServiceException instead of making POJOs used as action errors throawable NeedTimestamp bool NeedInstant bool NeedUtil bool ServerData *ServerData ClientData *ClientData // contains filtered or unexported fields }
func NewGenerator ¶
func (*Generator) ActionInfo ¶
func (*Generator) CreateClient ¶
func (gen *Generator) CreateClient()
func (*Generator) CreateClientConfig ¶
func (gen *Generator) CreateClientConfig()
func (*Generator) CreateClientDataAndFuncMap ¶
func (*Generator) CreateEnumPojo ¶
func (*Generator) CreateInstantJson ¶
func (gen *Generator) CreateInstantJson()
func (*Generator) CreateInterface ¶
func (gen *Generator) CreateInterface()
func (*Generator) CreateJavaFileFromTemplate ¶
func (*Generator) CreateModel ¶
func (gen *Generator) CreateModel()
func (*Generator) CreatePojo ¶
func (*Generator) CreatePojoFromDef ¶
func (*Generator) CreateRequestPojo ¶
func (*Generator) CreateResponsePojo ¶
func (*Generator) CreateServer ¶
func (gen *Generator) CreateServer()
func (*Generator) CreateServerDataAndFuncMap ¶
func (*Generator) CreateStructPojo ¶
func (*Generator) CreateTimestamp ¶
func (gen *Generator) CreateTimestamp()
func (*Generator) CreateUnionPojo ¶
func (*Generator) CreateUnitValuePojo ¶
func (*Generator) CreateUtil ¶
func (gen *Generator) CreateUtil()
func (*Generator) EmitAllFieldsConstructor ¶
func (*Generator) EmitBuilder ¶
func (*Generator) EmitFluidSetter ¶
func (*Generator) EmitGetter ¶
func (*Generator) EnsurePackageDir ¶
func (*Generator) ExceptionTypes ¶
func (*Generator) RequestType ¶
func (*Generator) ResponseType ¶
type ServerData ¶
type ServerData struct { Name string Model *sadl.Model ModelPackage string ServerPackage string PackageLine string Port int MainClass string ResourcesClass string ImplClass string InterfaceClass string RootPath string Http []*sadl.HttpDef Inputs []*sadl.HttpParamSpec Expected *sadl.HttpExpectedSpec Errors []*sadl.HttpExceptionSpec Class string Imports []string Funcs template.FuncMap Interfaces map[string][]string ExtraResources string }
Click to show internal directories.
Click to hide internal directories.