summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'seggetd/pkg.h')
-rw-r--r--seggetd/pkg.h70
1 files changed, 70 insertions, 0 deletions
diff --git a/seggetd/pkg.h b/seggetd/pkg.h
new file mode 100644
index 0000000..63a913e
--- /dev/null
+++ b/seggetd/pkg.h
@@ -0,0 +1,70 @@
+/*
+* Copyright (C) 2010 Robin H.Johnson, Ovechko Kostyantyn <fastinetserver@gmail.com>.
+*
+* Project: IDFetch.
+* Developer: Ovechko Kostyantyn Olexandrovich (Kharkiv State Technical University of Construction and Architecture, Ukraine).
+* Mentor: Robin H. Johnson (Gentoo Linux: Developer, Trustee & Infrastructure Lead).
+* Mentoring organization: Gentoo Linux.
+* Sponsored by GSOC 2010.
+*
+* This file is part of Segget.
+*
+* Segget is free software; you can redistribute it and/or
+* modify it under the terms of the GNU Lesser General Public
+* License as published by the Free Software Foundation; either
+* version 2.1 of the License, or (at your option) any later version.
+*
+* Segget is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with Segget; if not, write to the Free Software
+* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+*/
+#ifndef __PKG_H__
+#define __PKG_H__
+
+#include <stdio.h>
+#include <stdlib.h>
+#include <fstream>
+#include <iostream>
+#include <json/json.h>
+class Tdistfile;
+#include "distfile.h"
+
+using namespace std;
+typedef unsigned int uint;
+typedef Tdistfile* Pdistfile;
+
+#define Q_ADDED_TO_QUEUE 0
+#define Q_ALREADY_EXISTS 1
+#define Q_ERROR 100
+
+class Tpkg{
+ public:
+ vector<Pdistfile> Pdistfile_list;
+ string name;
+ string category;
+ uint distfile_count;
+ void load_distfile_list(json_object* json_array_distfile_list);
+ Tpkg():
+ Pdistfile_list(),
+ name(""),
+ category(""),
+ distfile_count(0)
+ {};
+ Tpkg(const Tpkg &L); // copy constructor
+ Tpkg & operator=(const Tpkg &L);
+ ~Tpkg();
+ int push_back_distfile(json_object* json_obj_distfile);
+ int find_distfile(string distfile_name);
+ void load_pkg_from_json(json_object* json_obj_pkg);
+};
+
+extern Tpkg **Ppkg_array;
+extern Tpkg proxy_fetcher_pkg;
+extern Tpkg request_server_pkg;
+
+#endif \ No newline at end of file