github.com/braveheart12/just@v0.8.7/configuration/logicrunner.go (about)

     1  /*
     2   *    Copyright 2019 Insolar Technologies
     3   *
     4   *    Licensed under the Apache License, Version 2.0 (the "License");
     5   *    you may not use this file except in compliance with the License.
     6   *    You may obtain a copy of the License at
     7   *
     8   *        http://www.apache.org/licenses/LICENSE-2.0
     9   *
    10   *    Unless required by applicable law or agreed to in writing, software
    11   *    distributed under the License is distributed on an "AS IS" BASIS,
    12   *    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    13   *    See the License for the specific language governing permissions and
    14   *    limitations under the License.
    15   */
    16  
    17  package configuration
    18  
    19  // LogicRunner configuration
    20  type LogicRunner struct {
    21  	// RPCListen - address logic runner binds RPC API to
    22  	RPCListen string
    23  	// RPCProtoco - protocol (network) of above address,
    24  	// e.g. "tcp", "unix"... see `net.Dial`
    25  	RPCProtocol string
    26  	// BuiltIn - configuration of builtin executor
    27  	BuiltIn *BuiltIn
    28  	// GoPlugin - configuration of executor based on Go plugins
    29  	GoPlugin *GoPlugin
    30  }
    31  
    32  // BuiltIn configuration, no options at the moment
    33  type BuiltIn struct{}
    34  
    35  // GoPlugin configuration
    36  type GoPlugin struct {
    37  	// RunnerListen - address Go plugins executor listens to
    38  	RunnerListen string
    39  	// RunnerProtocol - protocol (network) of above address,
    40  	// e.g. "tcp", "unix"... see `net.Dial`
    41  	RunnerProtocol string
    42  }
    43  
    44  // NewLogicRunner - returns default config of the logic runner
    45  func NewLogicRunner() LogicRunner {
    46  	return LogicRunner{
    47  		RPCListen:   "127.0.0.1:7778",
    48  		RPCProtocol: "tcp",
    49  		BuiltIn:     &BuiltIn{},
    50  		GoPlugin: &GoPlugin{
    51  			RunnerListen:   "127.0.0.1:7777",
    52  			RunnerProtocol: "tcp",
    53  		},
    54  	}
    55  }