Author: metze
Date: 2007-01-24 12:46:26 +0000 (Wed, 24 Jan 2007)
New Revision: 21000

WebSVN: 
http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=21000

Log:
add some options to control what ldif is dumped

default is dump everything

metze
Modified:
   branches/SAMBA_4_0/testprogs/ejs/minschema.js


Changeset:
Modified: branches/SAMBA_4_0/testprogs/ejs/minschema.js
===================================================================
--- branches/SAMBA_4_0/testprogs/ejs/minschema.js       2007-01-24 12:23:42 UTC 
(rev 20999)
+++ branches/SAMBA_4_0/testprogs/ejs/minschema.js       2007-01-24 12:46:26 UTC 
(rev 21000)
@@ -12,13 +12,42 @@
                         "POPT_AUTOHELP",
                         "POPT_COMMON_SAMBA",
                         "POPT_COMMON_CREDENTIALS",
-                        "verbose");
+                        "verbose",
+                        "classes",
+                        "attributes",
+                        "subschema",
+                        "subschema-auto");
 if (options == undefined) {
    println("Failed to parse options");
    return -1;
 }
 verbose = options["verbose"];
+dump_all = "yes";
+dump_classes = options["classes"];
+dump_attributes = options["attributes"];
+dump_subschema = options["subschema"];
+dump_subschema_auto = options["subschema-auto"];
 
+if (dump_classes != undefined) {
+       dump_all = undefined;
+}
+if (dump_attributes != undefined) {
+       dump_all = undefined;
+}
+if (dump_subschema != undefined) {
+       dump_all = undefined;
+}
+if (dump_subschema_auto != undefined) {
+       dump_all = undefined;
+       dump_subschema = "yes";
+}
+if (dump_all != undefined) {
+       dump_classes = "yes";
+       dump_attributes = "yes";
+       dump_subschema = "yes";
+       dump_subschema_auto = "yes";
+}
+
 if (options.ARGV.length != 2) {
    println("Usage: minschema.js <URL> <classfile>");
    return -1;
@@ -678,6 +707,10 @@
 objectClass: subSchema
 objectCategory: CN=SubSchema,${SCHEMADN}
 ");
+       if (dump_subschema_auto == undefined) {
+               return; 
+       }
+
        for (i in objectclasses) {
                write_aggregate_objectclass(objectclasses[i]);
        }
@@ -776,11 +809,16 @@
 /*
   dump an ldif form of the attributes and objectclasses
 */
-write_ldif(attributes, attrib_attrs);
-write_ldif(objectclasses, class_attrs);
+if (dump_attributes != undefined) {
+       write_ldif(attributes, attrib_attrs);
+}
+if (dump_classes != undefined) {
+       write_ldif(objectclasses, class_attrs);
+}
+if (dump_subschema != undefined) {
+       write_aggregate();
+}
 
-write_aggregate();
-
 if (verbose == undefined) {
        exit(0);
 }

Reply via email to