]> andersk Git - moira.git/commitdiff
added 3 new queries for fsgroups
authormar <mar>
Tue, 21 Mar 1989 18:12:32 +0000 (18:12 +0000)
committermar <mar>
Tue, 21 Mar 1989 18:12:32 +0000 (18:12 +0000)
server/queries2.c

index b752ce866091cb11098eb2f65019cb4f6e36782b..439cefc70facf34b67a801356c85c8d26113aded 100644 (file)
@@ -149,6 +149,10 @@ static struct valobj VOlist0[] = {
   {V_ID, 0, LIST, NAME, LIST_ID, SMS_LIST},
 };
 
+static struct valobj VOfilsys0[] = {
+  {V_ID, 0, FILESYS, LABEL, FILSYS_ID, SMS_FILESYS},
+};
+
 static struct valobj VOchar0[] = {
   {V_CHAR, 0},
 };
@@ -1088,6 +1092,45 @@ static struct validate dfil_validate = {
   0,
 };
 
+static char *gfgm_fields[] = {
+    "fsgroup", FILESYS, "sortkey"
+};
+
+static struct valobj gfgm_valobj[] = {
+    {V_ID, 0, FILESYS, LABEL, FILSYS_ID, SMS_FILESYS},
+    {V_SORT, 1},
+    {V_SORT, 0},
+};
+
+static struct validate gfgm_validate = {
+    gfgm_valobj,
+    3,
+    0,
+    0,
+    0,
+    0,
+    0,
+    0,
+    0,
+};
+
+static struct valobj aftg_valobj[] = {
+    {V_ID, 0, FILESYS, LABEL, FILSYS_ID, SMS_FILESYS},
+    {V_ID, 1, FILESYS, LABEL, FILSYS_ID, SMS_FILESYS},
+};
+
+static struct validate aftg_validate = {
+    aftg_valobj,
+    2,
+    "group_id",
+    "fg.group_id = %d and fg.filsys_id = %d",
+    2,
+    0,
+    0,
+    0,
+    0,
+};
+
 static char *ganf_fields[] = {
   MACHINE, DIR, DEVICE, STATUS, "allocated", "size", MOD1, MOD2, MOD3,
 };
@@ -2616,6 +2659,51 @@ struct query Queries2[] = {
     &dfil_validate,
   },
 
+  {
+    /* Q_GFGM - GET_FSGROUOP_MEMBERS */
+    "get_fsgroup_members",
+    "gfgm",
+    RETRIEVE,
+    "fg",
+    "fsgroup",
+    "%c = filesys.label, %c = fg.key",
+    gfgm_fields,
+    2,
+    "fg.group_id = %d and filesys.filsys_id = fg.filsys_id",
+    1,
+    &gfgm_validate,
+  },
+
+  {
+    /* Q_AFTG - ADD_FILESYS_TO_FSGROUP */
+    "add_filesys_to_fsgroup",
+    "aftg",
+    APPEND,
+    "fg",
+    "fsgroup",
+    "group_id = filesys.filsys_id, filsys_id = %i4, key = %c",
+    gfgm_fields,
+    2,
+    "filesys.filsys_id = %d and filesys.type = \"FSGROUP\"",
+    1,
+    &aftg_validate,
+  },
+
+  {
+    /* Q_RFFG - REMOVE_FILESYS_FROM_FSGROUP */
+    "remove_filesys_from_fsgroup",
+    "rffg",
+    DELETE,
+    "fg",
+    "fsgroup",
+    (char *)0,
+    gfgm_fields,
+    0,
+    "fg.group_id = %d and fg.filsys_id = %d",
+    2,
+    &aftg_validate,
+  },
+
   {
     /* Q_GANF - GET_ALL_NFSPHYS */
     "get_all_nfsphys",
This page took 0.812738 seconds and 5 git commands to generate.