GByteArray *
sqlx_pack_PROPDEL(const struct sqlx_name_s *name, const gchar * const *keys)
{
	MESSAGE req = make_request(NAME_MSGNAME_SQLX_PROPDEL, name);
	metautils_message_add_body_unref(req, STRV_encode_gba((gchar**)keys));
	return message_marshall_gba_and_clean(req);
}
Beispiel #2
0
GError *
conscience_remote_push_services(const char *cs, GSList *ls)
{
	MESSAGE req = metautils_message_create_named (NAME_MSGNAME_CS_PUSH_SRV);
	metautils_message_add_body_unref (req, service_info_marshall_gba (ls, NULL));
	return gridd_client_exec (cs, CS_CLIENT_TIMEOUT,
			message_marshall_gba_and_clean(req));
}
GByteArray *
sqlx_pack_PROPSET_pairs(struct sqlx_name_s *name, gboolean flush, GSList *pairs)
{
	MESSAGE req = make_request(NAME_MSGNAME_SQLX_PROPSET, name);
	if (flush)
		metautils_message_add_field_strint (req, NAME_MSGKEY_FLUSH, 1);
	metautils_message_add_body_unref (req, key_value_pairs_marshall_gba (pairs, NULL));
	return message_marshall_gba_and_clean(req);
}
GByteArray *
sqlx_pack_PROPSET_tab(const struct sqlx_name_s *name, gboolean flush, gchar **kv)
{
	MESSAGE req = make_request(NAME_MSGNAME_SQLX_PROPSET, name);
	if (flush)
		metautils_message_add_field_strint (req, NAME_MSGKEY_FLUSH, 1);
	metautils_message_add_body_unref (req, KV_encode_gba((gchar**)kv));
	return message_marshall_gba_and_clean(req);
}
GByteArray*
sqlx_pack_REPLICATE(struct sqlx_name_s *name, struct TableSequence *tabseq)
{
	EXTRA_ASSERT(name != NULL);
	EXTRA_ASSERT(tabseq != NULL);

	MESSAGE req = make_request(NAME_MSGNAME_SQLX_REPLICATE, name);
	metautils_message_add_body_unref(req, sqlx_encode_TableSequence(tabseq, NULL));
	return message_marshall_gba_and_clean(req);
}
Beispiel #6
0
GError*
conscience_remote_remove_services(const char *cs, const char *type, GSList *ls)
{
	MESSAGE req = metautils_message_create_named (NAME_MSGNAME_CS_RM_SRV);
	if (ls)
		metautils_message_add_body_unref (req, service_info_marshall_gba (ls, NULL));
	if (type) metautils_message_add_field_str (req, NAME_MSGKEY_TYPENAME, type);
	return gridd_client_exec (cs, CS_CLIENT_TIMEOUT,
			message_marshall_gba_and_clean(req));
}
GByteArray *
sqlx_pack_PROPDEL(struct sqlx_name_s *name, const gchar * const *keys)
{
	GSList *names = metautils_array_to_list((void**)keys);
	GByteArray *body = strings_marshall_gba(names, NULL);
	g_slist_free(names);

	MESSAGE req = make_request(NAME_MSGNAME_SQLX_PROPDEL, name);
	metautils_message_add_body_unref(req, body);
	return message_marshall_gba_and_clean(req);
}
Beispiel #8
0
GError *
gcluster_push_services(addr_info_t * addr, long timeout, GSList *ls)
{
	EXTRA_ASSERT (addr != NULL);
	gchar target[STRLEN_ADDRINFO];
	grid_addrinfo_to_string (addr, target, sizeof(target));

	MESSAGE req = metautils_message_create_named (NAME_MSGNAME_CS_PUSH_SRV);
	metautils_message_add_body_unref (req, service_info_marshall_gba (ls, NULL));
	return gridd_client_exec (target, ((gdouble)timeout)/1000.0,
			message_marshall_gba_and_clean(req));
}
Beispiel #9
0
static MESSAGE
_m2v2_build_request(const char *name, struct oio_url_s *url, GByteArray *body)
{
	EXTRA_ASSERT(name != NULL);
	EXTRA_ASSERT(url != NULL);

	MESSAGE msg = metautils_message_create_named(name);
	metautils_message_add_url (msg, url);
	if (body)
		metautils_message_add_body_unref (msg, body);
	return msg;
}
Beispiel #10
0
GByteArray*
sqlx_pack_QUERY(struct sqlx_name_s *name, const gchar *query,
		struct TableSequence *params, gboolean autocreate)
{
	EXTRA_ASSERT(name != NULL);
	EXTRA_ASSERT(query != NULL);

	guint8 ac = (guint8) autocreate;
	MESSAGE req = make_request(NAME_MSGNAME_SQLX_QUERY, name);
	metautils_message_add_field(req, NAME_MSGKEY_AUTOCREATE, &ac, 1);
	metautils_message_add_fields_str(req, NAME_MSGKEY_QUERY, query, NULL);
	if (!params)
		metautils_message_add_body_unref (req, sqlx_encode_TableSequence(params, NULL));
	return message_marshall_gba_and_clean(req);
}
Beispiel #11
0
GByteArray*
sqlx_pack_QUERY_single(struct sqlx_name_s *name, const gchar *query,
		gboolean autocreate)
{
	EXTRA_ASSERT(name != NULL);
	EXTRA_ASSERT(query != NULL);

	MESSAGE req = make_request(NAME_MSGNAME_SQLX_QUERY, name);
	guint8 ac = (guint8) autocreate;
	do {
		Table_t *t = g_malloc0(sizeof(Table_t));
		OCTET_STRING_fromBuf(&(t->name), query, strlen(query));

		TableSequence_t *ts = g_malloc0(sizeof(TableSequence_t));
		asn_sequence_add(&(ts->list), t);

		metautils_message_add_body_unref(req, sqlx_encode_TableSequence(ts, NULL));
		metautils_message_add_field(req, NAME_MSGKEY_AUTOCREATE, &ac, 1);

		asn_DEF_TableSequence.free_struct(&asn_DEF_TableSequence, ts, FALSE);
	} while (0);

	return message_marshall_gba_and_clean(req);
}