本文整理汇总了Golang中github.com/intelsdi-x/snap/control/plugin/cpolicy.NewPolicyNode函数的典型用法代码示例。如果您正苦于以下问题:Golang NewPolicyNode函数的具体用法?Golang NewPolicyNode怎么用?Golang NewPolicyNode使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了NewPolicyNode函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1: GetConfigPolicy
func (s *mysqlPublisher) GetConfigPolicy() (*cpolicy.ConfigPolicy, error) {
cp := cpolicy.New()
config := cpolicy.NewPolicyNode()
username, err := cpolicy.NewStringRule("username", false, usernameDefault)
handleErr(err)
username.Description = "Username to login to the MySQL server"
password, err := cpolicy.NewStringRule("password", false, passwordDefault)
handleErr(err)
password.Description = "Password to login to the MySQL server"
hostName, err := cpolicy.NewStringRule("hostname", false, hostnameDefault)
handleErr(err)
password.Description = "The host of MySQL service"
port, err := cpolicy.NewStringRule("port", false, tcpPortDefault)
handleErr(err)
password.Description = "The host of MySQL service"
database, err := cpolicy.NewStringRule("database", false, databaseDefault)
handleErr(err)
database.Description = "The MySQL database that data will be pushed to"
tableName, err := cpolicy.NewStringRule("tablename", false, tableDefault)
handleErr(err)
tableName.Description = "The MySQL table within the database where information will be stored"
config.Add(username, password, hostName, port, database, tableName)
cp.Add([]string{""}, config)
return cp, nil
}
示例2: GetConfigPolicy
func (rmq *rmqPublisher) GetConfigPolicy() (*cpolicy.ConfigPolicy, error) {
cp := cpolicy.New()
config := cpolicy.NewPolicyNode()
r1, err := cpolicy.NewStringRule("uri", true)
handleErr(err)
r1.Description = "RabbitMQ URI (user:[email protected]:port/vhost)"
config.Add(r1)
r2, err := cpolicy.NewStringRule("exchange_name", true)
handleErr(err)
r2.Description = "RabbitMQ Exchange Name"
config.Add(r2)
r3, err := cpolicy.NewStringRule("exchange_type", true)
handleErr(err)
r3.Description = "RabbitMQ Exchange Type"
config.Add(r3)
r4, err := cpolicy.NewStringRule("routing_key", true)
handleErr(err)
r4.Description = "RabbitMQ Routing Key"
config.Add(r4)
r5, err := cpolicy.NewBoolRule("durable", false, true)
handleErr(err)
r5.Description = "RabbitMQ Durable"
config.Add(r5)
cp.Add([]string{""}, config)
return cp, nil
}
示例3: GetConfigPolicy
// GetConfigPolicy returns a config policy
func (s *PostgreSQLPublisher) GetConfigPolicy() (*cpolicy.ConfigPolicy, error) {
cp := cpolicy.New()
config := cpolicy.NewPolicyNode()
username, err := cpolicy.NewStringRule("username", true)
handleErr(err)
username.Description = "Username to login to the PostgreSQL server"
password, err := cpolicy.NewStringRule("password", true)
handleErr(err)
password.Description = "Password to login to the PostgreSQL server"
database, err := cpolicy.NewStringRule("database", true)
handleErr(err)
database.Description = "The postgresql database that data will be pushed to"
tableName, err := cpolicy.NewStringRule("table_name", true)
handleErr(err)
tableName.Description = "The postgresql table within the database where information will be stored"
hostName, err := cpolicy.NewStringRule("hostname", true, "localhost")
handleErr(err)
tableName.Description = "The postgresql server ip or domain name"
port, err := cpolicy.NewIntegerRule("port", true, 5432)
handleErr(err)
port.Description = "The postgresql server port number"
config.Add(username, password, database, tableName, hostName, port)
cp.Add([]string{""}, config)
return cp, nil
}
示例4: GetConfigPolicy
func (rmq *rmqPublisher) GetConfigPolicy() (*cpolicy.ConfigPolicy, error) {
cp := cpolicy.New()
config := cpolicy.NewPolicyNode()
r1, err := cpolicy.NewStringRule("address", true)
handleErr(err)
r1.Description = "RabbitMQ Address (host:port)"
config.Add(r1)
r2, err := cpolicy.NewStringRule("exchange_name", true)
handleErr(err)
r2.Description = "RabbitMQ Exchange Name"
config.Add(r2)
r3, err := cpolicy.NewStringRule("exchange_type", true)
handleErr(err)
r3.Description = "RabbitMQ Exchange Type"
config.Add(r3)
r4, err := cpolicy.NewStringRule("routing_key", true)
handleErr(err)
r4.Description = "RabbitMQ Routing Key"
config.Add(r4)
cp.Add([]string{""}, config)
return cp, nil
}
示例5: GetConfigPolicy
func (m *mockSessionStatePluginProxy) GetConfigPolicy(args []byte, reply *[]byte) error {
cp := cpolicy.New()
n1 := cpolicy.NewPolicyNode()
if m.c {
r1, _ := cpolicy.NewStringRule("name", false, "bob")
n1.Add(r1)
r2, _ := cpolicy.NewIntegerRule("someInt", true, 100)
n1.Add(r2)
r3, _ := cpolicy.NewStringRule("password", true)
n1.Add(r3)
r4, _ := cpolicy.NewFloatRule("somefloat", false, 3.14)
n1.Add(r4)
cp.Add([]string{"foo", "bar"}, n1)
} else {
r1, _ := cpolicy.NewIntegerRule("SomeRequiredInt", true, 1)
r2, _ := cpolicy.NewStringRule("password", true)
r3, _ := cpolicy.NewFloatRule("somefloat", false, 3.14)
n1.Add(r1, r2, r3)
cp.Add([]string{""}, n1)
}
cpr := plugin.GetConfigPolicyReply{Policy: cp}
var err error
*reply, err = m.e.Encode(cpr)
return err
}
示例6: GetConfigPolicy
func (f *influxPublisher) GetConfigPolicy() (*cpolicy.ConfigPolicy, error) {
cp := cpolicy.New()
config := cpolicy.NewPolicyNode()
r1, err := cpolicy.NewStringRule("host", true)
handleErr(err)
r1.Description = "Influxdb host"
config.Add(r1)
r2, err := cpolicy.NewIntegerRule("port", true)
handleErr(err)
r2.Description = "Influxdb port"
config.Add(r2)
r3, err := cpolicy.NewStringRule("database", true)
handleErr(err)
r3.Description = "Influxdb db name"
config.Add(r3)
r4, err := cpolicy.NewStringRule("user", true)
handleErr(err)
r4.Description = "Influxdb user"
config.Add(r4)
r5, err := cpolicy.NewStringRule("password", true)
handleErr(err)
r5.Description = "Influxdb password"
config.Add(r4)
cp.Add([]string{""}, config)
return cp, nil
}
示例7: GetConfigPolicy
func (f *mysqlPublisher) GetConfigPolicy() (*cpolicy.ConfigPolicy, error) {
cp := cpolicy.New()
config := cpolicy.NewPolicyNode()
username, err := cpolicy.NewStringRule("username", true, "root")
handleErr(err)
username.Description = "Username to login to the MySQL server"
password, err := cpolicy.NewStringRule("password", true, "root")
handleErr(err)
password.Description = "Password to login to the MySQL server"
database, err := cpolicy.NewStringRule("database", true, "SNAP_TEST")
handleErr(err)
database.Description = "The MySQL database that data will be pushed to"
tableName, err := cpolicy.NewStringRule("tablename", true, "info")
handleErr(err)
tableName.Description = "The MySQL table within the database where information will be stored"
config.Add(username, password, database, tableName)
cp.Add([]string{""}, config)
return cp, nil
}
示例8: GetConfigPolicy
// GetConfigPolicy returns config policy
// It returns error in case retrieval was not successful
func (p *Plugin) GetConfigPolicy() (*cpolicy.ConfigPolicy, error) {
cp := cpolicy.New()
rule, _ := cpolicy.NewStringRule("proc_path", false, "/proc")
node := cpolicy.NewPolicyNode()
node.Add(rule)
cp.Add([]string{vendor, fs, pluginName}, node)
return cp, nil
}
示例9: GetConfigPolicy
//GetConfigPolicy returns a ConfigPolicy for testing
func (f *nfsCollector) GetConfigPolicy() (*cpolicy.ConfigPolicy, error) {
c := cpolicy.New()
rule, _ := cpolicy.NewStringRule("command", true)
p := cpolicy.NewPolicyNode()
p.Add(rule)
c.Add([]string{"intel", "dummy", "exec"}, p)
return c, nil
}
示例10: GetConfigPolicy
func (a *Apache) GetConfigPolicy() (*cpolicy.ConfigPolicy, error) {
cfg := cpolicy.New()
rule, _ := cpolicy.NewStringRule("apache_mod_status_url", false, "http://127.0.0.1:80/server-status?auto")
policy := cpolicy.NewPolicyNode()
policy.Add(rule)
cfg.Add([]string{"intel", "apache"}, policy)
return cfg, nil
}
示例11: GetConfigPolicy
func (e *Etcd) GetConfigPolicy() (*cpolicy.ConfigPolicy, error) {
c := cpolicy.New()
rule, _ := cpolicy.NewStringRule("etcd_host", true)
p := cpolicy.NewPolicyNode()
p.Add(rule)
c.Add([]string{"intel", "etcd"}, p)
return c, nil
}
示例12: GetConfigPolicy
//GetConfigPolicy returns a ConfigPolicyTree for testing
func (f *Mock) GetConfigPolicy() (*cpolicy.ConfigPolicy, error) {
c := cpolicy.New()
rule, _ := cpolicy.NewStringRule("name", false, "bob")
rule2, _ := cpolicy.NewStringRule("password", true)
p := cpolicy.NewPolicyNode()
p.Add(rule)
p.Add(rule2)
c.Add([]string{"intel", "mock", "foo"}, p)
return c, nil
}
示例13: GetConfigPolicy
func (p *movingAverageProcessor) GetConfigPolicy() (*cpolicy.ConfigPolicy, error) {
cp := cpolicy.New()
config := cpolicy.NewPolicyNode()
r1, err := cpolicy.NewIntegerRule("MovingAvgBufLength", true)
handleErr(err)
r1.Description = "Buffer Length for moving average "
config.Add(r1)
cp.Add([]string{""}, config)
return cp, nil
}
示例14: GetConfigPolicy
//GetConfigPolicy returns a ConfigPolicy
func (p *SmartCollector) GetConfigPolicy() (*cpolicy.ConfigPolicy, error) {
cp := cpolicy.New()
rule, _ := cpolicy.NewStringRule("proc_path", false, "/proc")
node := cpolicy.NewPolicyNode()
node.Add(rule)
cp.Add([]string{nsVendor, nsClass, nsType}, node)
rule, _ = cpolicy.NewStringRule("dev_path", false, "/dev")
node.Add(rule)
return cp, nil
}
示例15: GetConfigPolicy
func (p *mockPlugin) GetConfigPolicy() (*cpolicy.ConfigPolicy, error) {
cp := cpolicy.New()
cpn := cpolicy.NewPolicyNode()
r1, _ := cpolicy.NewStringRule("username", false, "root")
r2, _ := cpolicy.NewStringRule("password", true)
cpn.Add(r1, r2)
ns := []string{"one", "two", "potato"}
cp.Add(ns, cpn)
cp.Freeze()
return cp, nil
}