Browse Source

xml: Remove SUBCOMMAND and add base types

Serj Kalichev 1 year ago
parent
commit
22c127d4f4
4 changed files with 52 additions and 34 deletions
  1. 8 8
      examples/test/entry.xml
  2. 9 11
      examples/test/ptypes.xml
  3. 8 8
      examples/test/schema.xml
  4. 27 7
      plugins/klish/xml/ptypes.xml

+ 8 - 8
examples/test/entry.xml

@@ -15,17 +15,17 @@
     <!-- SWITCH container. Container is not visible while CLI session -->
     <ENTRY name="opt" help="Switch subcommand" ptype="STRING" mode="switch" container="true">
       <!-- PARAMs (switched) -->
-      <ENTRY name="o1" ptype="SUBCOMMAND" help="Clear callerid_number_prepend assignment" />
-      <ENTRY name="o2" ptype="SUBCOMMAND" help="Clear record assignment" />
-      <ENTRY name="o3" ptype="SUBCOMMAND" help="Clear callerid assignment" />
-      <ENTRY name="o4" ptype="SUBCOMMAND" help="Clear a schedule">
+      <ENTRY name="o1" ptype="COMMAND" help="Clear callerid_number_prepend assignment" />
+      <ENTRY name="o2" ptype="COMMAND" help="Clear record assignment" />
+      <ENTRY name="o3" ptype="COMMAND" help="Clear callerid assignment" />
+      <ENTRY name="o4" ptype="COMMAND" help="Clear a schedule">
         <!-- subPARAM -->
         <ENTRY name="o5" help="Include number" ptype="UINT" optional="false" completion="${POSSIBLE_TRUNK_GROUP_INCLUDES}">
         </ENTRY>
       </ENTRY>
-      <ENTRY name="o6" ptype="SUBCOMMAND" help="Clear callerid_number_remove assignment" />
-      <ENTRY name="o7" ptype="SUBCOMMAND" help="Clear callerid_number_postpend assignment" />
-      <ENTRY name="o8" ptype="SUBCOMMAND" help="Clear callerid_number_replace assignment" />
+      <ENTRY name="o6" ptype="COMMAND" help="Clear callerid_number_remove assignment" />
+      <ENTRY name="o7" ptype="COMMAND" help="Clear callerid_number_postpend assignment" />
+      <ENTRY name="o8" ptype="COMMAND" help="Clear callerid_number_replace assignment" />
 
     </ENTRY>
 
@@ -41,7 +41,7 @@
 	<!-- PTYPE. Special purpose=ptype. Link to previosly defined "COMMAND" PTYPE -->
 	<ENTRY name="COMMAND" purpose="ptype" ref="/COMMAND"/>
 	<!-- COND. Conditional expression. Is parent COMMAND visible? -->
-	<ENTRY name="o2" ptype="SUBCOMMAND" purpose="cond"/>
+	<ENTRY name="o2" ptype="COMMAND" purpose="cond"/>
 
 	<ENTRY name="o1" help="Clear callerid_number_prepend assignment">
 		<ENTRY name="COMMAND" purpose="ptype" ref="/COMMAND"/>

+ 9 - 11
examples/test/ptypes.xml

@@ -6,17 +6,15 @@
 	xsi:schemaLocation="http://clish.sourceforge.net/XMLSchema http://clish.sourceforge.net/XMLSchema/clish.xsd">
 
 
-<ENTRY name="COMMAND" purpose="ptype">
-	<ENTRY name="completion" purpose="completion">
-		<ACTION sym="completion_COMMAND"/>
-	</ENTRY>
-	<ENTRY name="help" purpose="help">
-		<ACTION sym="help_COMMAND"/>
-	</ENTRY>
-	<ACTION sym="COMMAND"/>
-</ENTRY>
-
-<ENTRY name="SUBCOMMAND" purpose="ptype" ref="/COMMAND"/>
+<PTYPE name="COMMAND">
+	<COMPL>
+		<ACTION sym="completion_COMMAND@klish"/>
+	</COMPL>
+	<HELP>
+		<ACTION sym="help_COMMAND@klish"/>
+	</HELP>
+	<ACTION sym="COMMAND@klish"/>
+</PTYPE>
 
 
 </KLISH>

+ 8 - 8
examples/test/schema.xml

@@ -48,17 +48,17 @@
     <!-- SWITCH container. Container is not visible while CLI session -->
     <ENTRY name="opt" help="Switch subcommand" ptype="STRING" mode="switch" container="true">
       <!-- PARAMs (switched) -->
-      <ENTRY name="o1" ptype="SUBCOMMAND" help="Clear callerid_number_prepend assignment" />
-      <ENTRY name="o2" ptype="SUBCOMMAND" help="Clear record assignment" />
-      <ENTRY name="o3" ptype="SUBCOMMAND" help="Clear callerid assignment" />
-      <ENTRY name="o4" ptype="SUBCOMMAND" help="Clear a schedule">
+      <ENTRY name="o1" ptype="COMMAND" help="Clear callerid_number_prepend assignment" />
+      <ENTRY name="o2" ptype="COMMAND" help="Clear record assignment" />
+      <ENTRY name="o3" ptype="COMMAND" help="Clear callerid assignment" />
+      <ENTRY name="o4" ptype="COMMAND" help="Clear a schedule">
         <!-- subPARAM -->
         <ENTRY name="o5" help="Include number" ptype="UINT" optional="false" completion="${POSSIBLE_TRUNK_GROUP_INCLUDES}">
         </ENTRY>
       </ENTRY>
-      <ENTRY name="o6" ptype="SUBCOMMAND" help="Clear callerid_number_remove assignment" />
-      <ENTRY name="o7" ptype="SUBCOMMAND" help="Clear callerid_number_postpend assignment" />
-      <ENTRY name="o8" ptype="SUBCOMMAND" help="Clear callerid_number_replace assignment" />
+      <ENTRY name="o6" ptype="COMMAND" help="Clear callerid_number_remove assignment" />
+      <ENTRY name="o7" ptype="COMMAND" help="Clear callerid_number_postpend assignment" />
+      <ENTRY name="o8" ptype="COMMAND" help="Clear callerid_number_replace assignment" />
 
     </ENTRY>
 
@@ -74,7 +74,7 @@
 	<!-- PTYPE. Special purpose=ptype. Link to previosly defined "COMMAND" PTYPE -->
 	<ENTRY name="COMMAND" purpose="ptype" ref="/COMMAND"/>
 	<!-- COND. Conditional expression. Is parent COMMAND visible? -->
-	<ENTRY name="o2" ptype="SUBCOMMAND" purpose="cond"/>
+	<ENTRY name="o2" ptype="COMMAND" purpose="cond"/>
 
 	<ENTRY name="o1" help="Clear callerid_number_prepend assignment">
 		<ENTRY name="COMMAND" purpose="ptype" ref="/COMMAND"/>

+ 27 - 7
plugins/klish/xml/ptypes.xml

@@ -6,17 +6,37 @@
 	xsi:schemaLocation="http://clish.sourceforge.net/XMLSchema http://clish.sourceforge.net/XMLSchema/clish.xsd">
 
 
-<ENTRY name="COMMAND" purpose="ptype">
-	<ENTRY name="completion" purpose="completion">
+<PTYPE name="COMMAND">
+	<COMPL>
 		<ACTION sym="completion_COMMAND@klish"/>
-	</ENTRY>
-	<ENTRY name="help" purpose="help">
+	</COMPL>
+	<HELP>
 		<ACTION sym="help_COMMAND@klish"/>
-	</ENTRY>
+	</HELP>
 	<ACTION sym="COMMAND@klish"/>
-</ENTRY>
+</PTYPE>
 
-<ENTRY name="SUBCOMMAND" purpose="ptype" ref="/COMMAND"/>
+<PTYPE name="COMMAND_CASE">
+	<COMPL>
+		<ACTION sym="completion_COMMAND@klish"/>
+	</COMPL>
+	<HELP>
+		<ACTION sym="help_COMMAND@klish"/>
+	</HELP>
+	<ACTION sym="COMMAND_CASE@klish"/>
+</PTYPE>
+
+<PTYPE name="INT">
+	<ACTION sym="INT@klish"/>
+</PTYPE>
+
+<PTYPE name="UINT">
+	<ACTION sym="UINT@klish"/>
+</PTYPE>
+
+<PTYPE name="STRING">
+	<ACTION sym="STRING@klish"/>
+</PTYPE>
 
 
 </KLISH>