ReadRuleDefinition - Reads a Rule Definition from repository
(_ context.Context, tenantID, ruleName, version string)
| 97 | |
| 98 | // ReadRuleDefinition - Reads a Rule Definition from repository |
| 99 | func (r *SchemaReader) ReadRuleDefinition(_ context.Context, tenantID, ruleName, version string) (definition *base.RuleDefinition, v string, err error) { |
| 100 | txn := r.database.DB.Txn(false) |
| 101 | defer txn.Abort() |
| 102 | var raw interface{} |
| 103 | raw, err = txn.First(constants.SchemaDefinitionsTable, "id", tenantID, ruleName, version) // Query rule definition |
| 104 | if err != nil { |
| 105 | return nil, "", errors.New(base.ErrorCode_ERROR_CODE_EXECUTION.String()) |
| 106 | } |
| 107 | |
| 108 | def, ok := raw.(storage.SchemaDefinition) |
| 109 | if ok { |
| 110 | var sch *base.SchemaDefinition |
| 111 | sch, err = schema.NewSchemaFromStringDefinitions(false, def.Serialized()) |
| 112 | if err != nil { |
| 113 | return nil, "", err |
| 114 | } |
| 115 | definition, err = schema.GetRuleByName(sch, ruleName) |
| 116 | if err != nil { |
| 117 | return nil, "", err |
| 118 | } |
| 119 | return definition, def.Version, err |
| 120 | } |
| 121 | |
| 122 | return nil, "", errors.New(base.ErrorCode_ERROR_CODE_SCHEMA_NOT_FOUND.String()) |
| 123 | } |
| 124 | |
| 125 | // HeadVersion - Reads the latest version from the repository. |
| 126 | func (r *SchemaReader) HeadVersion(_ context.Context, tenantID string) (string, error) { |
nothing calls this directly
no test coverage detected