X-Git-Url: https://git.tokkee.org/?p=sysdb.git;a=blobdiff_plain;f=src%2Finclude%2Fcore%2Fstore.h;h=c52299e806314a951df6fbb670e7b098f7e371cd;hp=f2235571cd8f0f7d080cd1c7795482c184e886d0;hb=bbd1b997cf153d54878efebc182bd88f1c64d45c;hpb=d8d03b18f0e0a4c39e2adec3cc2cd093d52c1f93 diff --git a/src/include/core/store.h b/src/include/core/store.h index f223557..c52299e 100644 --- a/src/include/core/store.h +++ b/src/include/core/store.h @@ -62,6 +62,7 @@ enum { SDB_FIELD_INTERVAL, /* type: datetime */ SDB_FIELD_BACKEND, /* type: array of strings */ SDB_FIELD_VALUE, /* attributes only; type: type of the value */ + SDB_FIELD_TIMESERIES, /* metrics only; type: boolean */ }; #define SDB_STORE_TYPE_TO_NAME(t) \ (((t) == SDB_HOST) ? "host" \ @@ -80,6 +81,7 @@ enum { : ((f) == SDB_FIELD_INTERVAL) ? "interval" \ : ((f) == SDB_FIELD_BACKEND) ? "backend" \ : ((f) == SDB_FIELD_VALUE) ? "value" \ + : ((f) == SDB_FIELD_TIMESERIES) ? "timeseries" \ : "unknown") #define SDB_FIELD_TYPE(f) \ @@ -89,6 +91,7 @@ enum { : ((f) == SDB_FIELD_INTERVAL) ? SDB_TYPE_DATETIME \ : ((f) == SDB_FIELD_BACKEND) ? (SDB_TYPE_ARRAY | SDB_TYPE_STRING) \ : ((f) == SDB_FIELD_VALUE) ? -1 /* unknown */ \ + : ((f) == SDB_FIELD_TIMESERIES) ? SDB_TYPE_BOOLEAN \ : -1) /* @@ -335,8 +338,6 @@ sdb_store_get_child(sdb_store_obj_t *host, int type, const char *name); * the returned value. If 'res' is NULL, the function will return whether the * field exists. * - * Note: Retrieving the backend this way is not currently supported. - * * Returns: * - 0 on success * - a negative value else @@ -569,14 +570,6 @@ sdb_store_all_matcher(sdb_store_expr_t *iter, sdb_store_matcher_t *m); sdb_store_matcher_t * sdb_store_in_matcher(sdb_store_expr_t *left, sdb_store_expr_t *right); -/* - * sdb_store_nin_matcher: - * Like sdb_store_in_matcher but matches if the left value is not included in - * the right value. - */ -sdb_store_matcher_t * -sdb_store_nin_matcher(sdb_store_expr_t *left, sdb_store_expr_t *right); - /* * sdb_store_lt_matcher, sdb_store_le_matcher, sdb_store_eq_matcher, * sdb_store_ge_matcher, sdb_store_gt_matcher: @@ -624,6 +617,15 @@ sdb_store_nregex_matcher(sdb_store_expr_t *left, sdb_store_expr_t *right); sdb_store_matcher_t * sdb_store_isnull_matcher(sdb_store_expr_t *expr); +/* + * sdb_store_istrue_matcher, sdb_store_isfalse_matcher: + * Creates a matcher matching boolean values. + */ +sdb_store_matcher_t * +sdb_store_istrue_matcher(sdb_store_expr_t *expr); +sdb_store_matcher_t * +sdb_store_isfalse_matcher(sdb_store_expr_t *expr); + /* * sdb_store_matcher_matches: * Check whether the specified matcher matches the specified store object. If @@ -650,51 +652,6 @@ sdb_store_matcher_matches(sdb_store_matcher_t *m, sdb_store_obj_t *obj, typedef sdb_store_matcher_t *(*sdb_store_matcher_op_cb) (sdb_store_expr_t *, sdb_store_expr_t *); -/* - * sdb_store_parse_matcher_op: - * Parse a matcher operator and return a constructor for the respective - * matcher. - * - * Returns: - * - matcher operator constructor on success - * - NULL else - */ -sdb_store_matcher_op_cb -sdb_store_parse_matcher_op(const char *op); - -/* - * sdb_store_parse_object_type: - * Parse the type name of a stored object. - * - * Returns: - * - the object type on success - * - a negative value else - */ -int -sdb_store_parse_object_type(const char *name); - -/* - * sdb_store_parse_object_type_plural: - * Parse the type name (plural) of a stored object. - * - * Returns: - * - the object type on success - * - a negative value else - */ -int -sdb_store_parse_object_type_plural(const char *name); - -/* - * sdb_store_parse_field_name: - * Parse the name of a stored object's queryable field. - * - * Returns: - * - the field id on success - * - a negative value else - */ -int -sdb_store_parse_field_name(const char *name); - /* * sdb_store_lookup_cb: * Lookup callback. It is called for each matching object when looking up data