Documentation ¶
Overview ¶
Package gnostic_plugin_v1 is a generated protocol buffer package.
It is generated from these files:
plugins/plugin.proto
It has these top-level messages:
Version Parameter Request Message Messages Response File
Index ¶
- Variables
- func HandleResponse(response *Response, outputLocation string) error
- type Environment
- type File
- type Message
- type Message_Level
- type Messages
- type Parameter
- type Request
- func (request *Request) AddModel(modelType string, model proto.Message) error
- func (*Request) Descriptor() ([]byte, []int)
- func (m *Request) GetCompilerVersion() *Version
- func (m *Request) GetModels() []*google_protobuf.Any
- func (m *Request) GetOutputPath() string
- func (m *Request) GetParameters() []*Parameter
- func (m *Request) GetSourceName() string
- func (*Request) ProtoMessage()
- func (m *Request) Reset()
- func (m *Request) String() string
- type Response
- type Version
Constants ¶
This section is empty.
Variables ¶
var Message_Level_name = map[int32]string{
0: "UNKNOWN",
1: "INFO",
2: "WARNING",
3: "ERROR",
4: "FATAL",
}
var Message_Level_value = map[string]int32{
"UNKNOWN": 0,
"INFO": 1,
"WARNING": 2,
"ERROR": 3,
"FATAL": 4,
}
Functions ¶
func HandleResponse ¶
Types ¶
type Environment ¶
type Environment struct { Request *Request // plugin request object Response *Response // response message Invocation string // string representation of call RunningAsPlugin bool // true if app is being run as a plugin }
Environment contains the environment of a plugin call.
func NewEnvironment ¶
func NewEnvironment() (env *Environment, err error)
NewEnvironment creates a plugin context from arguments and standard input.
func (*Environment) RespondAndExit ¶
func (env *Environment) RespondAndExit()
RespondAndExit serializes and returns the plugin response and then exits.
func (*Environment) RespondAndExitIfError ¶
func (env *Environment) RespondAndExitIfError(err error)
RespondAndExitIfError checks an error and if it is non-nil, records it and serializes and returns the response and then exits.
type File ¶
type File struct { // name of the file Name string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"` // data to be written to the file Data []byte `protobuf:"bytes,2,opt,name=data,proto3" json:"data,omitempty"` }
File describes a file generated by a plugin.
func (*File) Descriptor ¶
func (*File) ProtoMessage ¶
func (*File) ProtoMessage()
type Message ¶ added in v0.2.0
type Message struct { // message severity Level Message_Level `protobuf:"varint,1,opt,name=level,enum=gnostic.plugin.v1.Message_Level" json:"level,omitempty"` // a unique message identifier Code string `protobuf:"bytes,2,opt,name=code" json:"code,omitempty"` // message text Text string `protobuf:"bytes,3,opt,name=text" json:"text,omitempty"` // an associated key path in an API description Keys []string `protobuf:"bytes,4,rep,name=keys" json:"keys,omitempty"` }
Plugins can return messages to be collated and reported by gnostic.
func (*Message) Descriptor ¶ added in v0.2.0
func (*Message) GetLevel ¶ added in v0.2.0
func (m *Message) GetLevel() Message_Level
func (*Message) ProtoMessage ¶ added in v0.2.0
func (*Message) ProtoMessage()
type Message_Level ¶ added in v0.2.0
type Message_Level int32
const ( Message_UNKNOWN Message_Level = 0 Message_INFO Message_Level = 1 Message_WARNING Message_Level = 2 Message_ERROR Message_Level = 3 Message_FATAL Message_Level = 4 )
func (Message_Level) EnumDescriptor ¶ added in v0.2.0
func (Message_Level) EnumDescriptor() ([]byte, []int)
func (Message_Level) String ¶ added in v0.2.0
func (x Message_Level) String() string
type Messages ¶ added in v0.2.0
type Messages struct {
Messages []*Message `protobuf:"bytes,1,rep,name=messages" json:"messages,omitempty"`
}
func (*Messages) Descriptor ¶ added in v0.2.0
func (*Messages) GetMessages ¶ added in v0.2.0
func (*Messages) ProtoMessage ¶ added in v0.2.0
func (*Messages) ProtoMessage()
type Parameter ¶
type Parameter struct { // The name of the parameter as specified in the option string Name string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"` // The parameter value as specified in the option string Value string `protobuf:"bytes,2,opt,name=value" json:"value,omitempty"` }
A parameter passed to the plugin from (or through) gnostic.
func (*Parameter) Descriptor ¶
func (*Parameter) ProtoMessage ¶
func (*Parameter) ProtoMessage()
type Request ¶
type Request struct { // filename or URL of the original source document SourceName string `protobuf:"bytes,1,opt,name=source_name,json=sourceName" json:"source_name,omitempty"` // Output path specified in the plugin invocation. OutputPath string `protobuf:"bytes,2,opt,name=output_path,json=outputPath" json:"output_path,omitempty"` // Plugin parameters parsed from the invocation string. Parameters []*Parameter `protobuf:"bytes,3,rep,name=parameters" json:"parameters,omitempty"` // The version number of gnostic. CompilerVersion *Version `protobuf:"bytes,4,opt,name=compiler_version,json=compilerVersion" json:"compiler_version,omitempty"` // API models Models []*google_protobuf.Any `protobuf:"bytes,5,rep,name=models" json:"models,omitempty"` }
An encoded Request is written to the plugin's stdin.
func (*Request) Descriptor ¶
func (*Request) GetCompilerVersion ¶
func (*Request) GetModels ¶ added in v0.2.0
func (m *Request) GetModels() []*google_protobuf.Any
func (*Request) GetOutputPath ¶
func (*Request) GetParameters ¶
func (*Request) GetSourceName ¶
func (*Request) ProtoMessage ¶
func (*Request) ProtoMessage()
type Response ¶
type Response struct { // Error message. If non-empty, the plugin failed. // The plugin process should exit with status code zero // even if it reports an error in this way. // // This should be used to indicate errors which prevent the plugin from // operating as intended. Errors which indicate a problem in gnostic // itself -- such as the input Document being unparseable -- should be // reported by writing a message to stderr and exiting with a non-zero // status code. Errors []string `protobuf:"bytes,1,rep,name=errors" json:"errors,omitempty"` // file output, each file will be written by gnostic to an appropriate location. Files []*File `protobuf:"bytes,2,rep,name=files" json:"files,omitempty"` // informational messages to be collected and reported by gnostic. Messages []*Message `protobuf:"bytes,3,rep,name=messages" json:"messages,omitempty"` }
The plugin writes an encoded Response to stdout.
func (*Response) Descriptor ¶
func (*Response) GetMessages ¶ added in v0.2.0
func (*Response) ProtoMessage ¶
func (*Response) ProtoMessage()
type Version ¶
type Version struct { Major int32 `protobuf:"varint,1,opt,name=major" json:"major,omitempty"` Minor int32 `protobuf:"varint,2,opt,name=minor" json:"minor,omitempty"` Patch int32 `protobuf:"varint,3,opt,name=patch" json:"patch,omitempty"` // A suffix for alpha, beta or rc release, e.g., "alpha-1", "rc2". It should // be empty for mainline stable releases. Suffix string `protobuf:"bytes,4,opt,name=suffix" json:"suffix,omitempty"` }
The version number of gnostic.
func (*Version) Descriptor ¶
func (*Version) ProtoMessage ¶
func (*Version) ProtoMessage()
Directories ¶
Path | Synopsis |
---|---|
gnostic_analyze is a tool for analyzing OpenAPI descriptions.
|
gnostic_analyze is a tool for analyzing OpenAPI descriptions. |
summarize
summarize is a tool for summarizing the results of gnostic_analyze runs.
|
summarize is a tool for summarizing the results of gnostic_analyze runs. |
gnostic_go_generator is a sample Gnostic plugin that generates Go code that supports an API.
|
gnostic_go_generator is a sample Gnostic plugin that generates Go code that supports an API. |