JULEA
Loading...
Searching...
No Matches
jitem-internal.h
Go to the documentation of this file.
1/*
2 * JULEA - Flexible storage framework
3 * Copyright (C) 2010-2024 Michael Kuhn
4 *
5 * This program is free software: you can redistribute it and/or modify
6 * it under the terms of the GNU Lesser General Public License as published by
7 * the Free Software Foundation, either version 3 of the License, or
8 * (at your option) any later version.
9 *
10 * This program is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 * GNU Lesser General Public License for more details.
14 *
15 * You should have received a copy of the GNU Lesser General Public License
16 * along with this program. If not, see <http://www.gnu.org/licenses/>.
17 */
18
23#ifndef JULEA_ITEM_ITEM_INTERNAL_H
24#define JULEA_ITEM_ITEM_INTERNAL_H
25
26#if !defined(JULEA_ITEM_H) && !defined(JULEA_ITEM_COMPILATION)
27#error "Only <julea-item.h> can be included directly."
28#endif
29
30#include <glib.h>
31
32#include <bson.h>
33
34#include <julea.h>
35
36#include <item/jcollection.h>
37#include <item/jitem.h>
38
39G_BEGIN_DECLS
40
63G_GNUC_INTERNAL JItem* j_item_new(JCollection* collection, gchar const* name, JDistribution* distribution);
64
78G_GNUC_INTERNAL JItem* j_item_new_from_bson(JCollection* collection, bson_t const* b);
79
92G_GNUC_INTERNAL JCollection* j_item_get_collection(JItem* item);
93
107G_GNUC_INTERNAL bson_t* j_item_serialize(JItem* item, JSemantics* semantics);
108
120G_GNUC_INTERNAL void j_item_deserialize(JItem* item, bson_t const* b);
121
134G_GNUC_INTERNAL bson_oid_t const* j_item_get_id(JItem* item);
135
145G_GNUC_INTERNAL void j_item_set_modification_time(JItem* item, gint64 modification_time);
146
156G_GNUC_INTERNAL void j_item_set_size(JItem* item, guint64 size);
157
162G_END_DECLS
163
164#endif
G_GNUC_INTERNAL void j_item_set_size(JItem *item, guint64 size)
Definition jitem.c:563
G_GNUC_INTERNAL void j_item_set_modification_time(JItem *item, gint64 modification_time)
Definition jitem.c:552
Definition jcollection.c:48
Definition jdistribution.c:48
Definition jitem.c:59
Definition jsemantics.c:42