socsvn commit: r255801 - in soc2013/mattbw/backend: . query

mattbw at FreeBSD.org mattbw at FreeBSD.org
Sun Aug 11 09:30:47 UTC 2013


Author: mattbw
Date: Sun Aug 11 09:30:46 2013
New Revision: 255801
URL: http://svnweb.FreeBSD.org/socsvn/?view=rev&rev=255801

Log:
  Move the repository type code to utils.
  
  This is so it can be used in jobs as well, but the new location is slightly
  counter-intuitive and subject to change.
  

Modified:
  soc2013/mattbw/backend/query/core.c
  soc2013/mattbw/backend/utils.c
  soc2013/mattbw/backend/utils.h

Modified: soc2013/mattbw/backend/query/core.c
==============================================================================
--- soc2013/mattbw/backend/query/core.c	Sun Aug 11 09:01:31 2013	(r255800)
+++ soc2013/mattbw/backend/query/core.c	Sun Aug 11 09:30:46 2013	(r255801)
@@ -25,18 +25,11 @@
 #include "../pk-backend.h"
 #include "pkg.h"
 
-
 #include "../db.h"		/* db_open_remote */
-#include "../utils.h"		/* string_match */
+#include "../utils.h"		/* string_match, type_of_repo_name */
 #include "../pkgutils.h"	/* pkgutils_... */
 #include "core.h"		/* Prototypes */
 
-enum repo_type {
-	REPO_INVALID,
-	REPO_ANY,
-	REPO_LOCAL,
-	REPO_REMOTE
-};
 
 struct query {
 	PkBackend      *backend;
@@ -53,7 +46,7 @@
 typedef		struct pkgdb_it * (*query_func_ptr) (struct query *q);
 
 static bool	can_remote_iterate(struct query *q);
-static enum repo_type type_of_repo_name(const char *name);
+
 static gchar   *match_pkg(struct pkg *pkg, struct query *q);
 static gchar  **init_unpack_source(PkBackend *backend, struct query_source *s);
 static gchar  **make_fake_id_split(const char *name);
@@ -308,26 +301,6 @@
 	return sane;
 }
 
-/*
- * Finds the type of the given PackageKit repository name.
- */
-static enum repo_type
-type_of_repo_name(const char *name)
-{
-	enum repo_type	rtype;
-
-	/* Null or empty implies no specific repository */
-	if (name == NULL || name[0] == '\0')
-		rtype = REPO_ANY;
-	else if (strcmp(name, "installed") == 0)
-		rtype = REPO_LOCAL;
-	else if (pkg_repo_find_ident(name) != NULL)
-		rtype = REPO_REMOTE;
-	else
-		rtype = REPO_INVALID;
-
-	return rtype;
-}
 
 /*
  * Checks whether a candidate package matches any constraints provided by the

Modified: soc2013/mattbw/backend/utils.c
==============================================================================
--- soc2013/mattbw/backend/utils.c	Sun Aug 11 09:01:31 2013	(r255800)
+++ soc2013/mattbw/backend/utils.c	Sun Aug 11 09:30:46 2013	(r255801)
@@ -20,10 +20,11 @@
 
 /* String/ID utilities. */
 
-#include <assert.h>		/* assert */ 
+#include <assert.h>		/* assert */
 #include <string.h>
 
 #include <glib.h>
+#include "pkg.h"
 #include "pk-backend.h"		/* pk_backend_get_strv */
 
 #include "utils.h"		/* prototypes */
@@ -49,6 +50,28 @@
 }
 
 /*
+ * Finds the type of the given PackageKit repository name.
+ */
+enum repo_type
+type_of_repo_name(const char *name)
+{
+	enum repo_type	rtype;
+
+	/* Null or empty implies no specific repository */
+	if (name == NULL || name[0] == '\0') {
+		rtype = REPO_ANY;
+	} else if (strcmp(name, "installed") == 0) {
+		rtype = REPO_LOCAL;
+	} else if (pkg_repo_find_ident(name) != NULL) {
+		rtype = REPO_REMOTE;
+	} else {
+		rtype = REPO_INVALID;
+	}
+
+	return rtype;
+}
+
+/*
  * Retrieves PackageIDs from the backend, as well as the total number of them.
  */
 gchar **

Modified: soc2013/mattbw/backend/utils.h
==============================================================================
--- soc2013/mattbw/backend/utils.h	Sun Aug 11 09:01:31 2013	(r255800)
+++ soc2013/mattbw/backend/utils.h	Sun Aug 11 09:30:46 2013	(r255801)
@@ -23,6 +23,13 @@
 
 #include <stdbool.h>		/* bool */
 
+enum repo_type {
+	REPO_INVALID,
+	REPO_ANY,
+	REPO_LOCAL,
+	REPO_REMOTE
+};
+
 #define	INTENTIONALLY_IGNORE(x)	(void)(x)
 #define STATUS(backend, status) \
 	(void)pk_backend_set_status((backend), (status))
@@ -30,6 +37,7 @@
 	(void)pk_backend_error_code((backend), (type), (msg))
 
 bool		string_match(const char *left, const char *right);
+enum repo_type	type_of_repo_name(const char *name);
 gchar	      **get_package_ids(PkBackend *backend, guint *count_p);
 
 #endif				/* !_PKGNG_BACKEND_DETAILS_H_ */


More information about the svn-soc-all mailing list