The three utility functions xml_quote_attr, xml_quote_pcdata and
uri_escape were only used in a single module. Move them close to
where they are used.
This is just code refactoring.
---
v2v/DOM.ml | 17 ++++++++++++++++-
v2v/utils.ml | 31 -------------------------------
v2v/vCenter.ml | 16 +++++++++++++++-
3 files changed, 31 insertions(+), 33 deletions(-)
diff --git a/v2v/DOM.ml b/v2v/DOM.ml
index b22d27e..7bf5a9b 100644
--- a/v2v/DOM.ml
+++ b/v2v/DOM.ml
@@ -19,7 +19,6 @@
(* Poor man's XML DOM, mutable for ease of modification. *)
open Common_utils
-open Utils
open Printf
@@ -83,6 +82,22 @@ and element_to_chan ?(indent = 0) chan
output_string chan "/>"
)
+(* Quote XML <element attr='...'> content. Note you must use single
+ * quotes around the attribute.
+ *)
+and xml_quote_attr str =
+ let str = String.replace str "&" "&" in
+ let str = String.replace str "'" "'" in
+ let str = String.replace str "<" "<" in
+ let str = String.replace str ">" ">" in
+ str
+
+and xml_quote_pcdata str =
+ let str = String.replace str "&" "&" in
+ let str = String.replace str "<" "<" in
+ let str = String.replace str ">" ">" in
+ str
+
let doc_to_chan chan doc =
fprintf chan "<?xml version='1.0'
encoding='utf-8'?>\n";
element_to_chan chan doc;
diff --git a/v2v/utils.ml b/v2v/utils.ml
index f46fccb..8599bcd 100644
--- a/v2v/utils.ml
+++ b/v2v/utils.ml
@@ -25,37 +25,6 @@ open Common_utils
let quote = Filename.quote
-(* Quote XML <element attr='...'> content. Note you must use single
- * quotes around the attribute.
- *)
-let xml_quote_attr str =
- let str = String.replace str "&" "&" in
- let str = String.replace str "'" "'" in
- let str = String.replace str "<" "<" in
- let str = String.replace str ">" ">" in
- str
-
-let xml_quote_pcdata str =
- let str = String.replace str "&" "&" in
- let str = String.replace str "<" "<" in
- let str = String.replace str ">" ">" in
- str
-
-(* URI quoting. *)
-let uri_quote str =
- let len = String.length str in
- let xs = ref [] in
- for i = 0 to len-1 do
- xs :=
- (match str.[i] with
- | ('A'..'Z' | 'a'..'z' | '0'..'9' |
'/' | '.' | '-') as c ->
- String.make 1 c
- | c ->
- sprintf "%%%02x" (Char.code c)
- ) :: !xs
- done;
- String.concat "" (List.rev !xs)
-
(* Parse an xpath expression and return a string/int. Returns
* Some v or None if the expression doesn't match.
*)
diff --git a/v2v/vCenter.ml b/v2v/vCenter.ml
index 49b3f32..4c5ca1c 100644
--- a/v2v/vCenter.ml
+++ b/v2v/vCenter.ml
@@ -21,9 +21,23 @@ open Printf
open Common_utils
open Common_gettext.Gettext
-open Utils
open Xml
+(* URI quoting. *)
+let uri_quote str =
+ let len = String.length str in
+ let xs = ref [] in
+ for i = 0 to len-1 do
+ xs :=
+ (match str.[i] with
+ | ('A'..'Z' | 'a'..'z' | '0'..'9' |
'/' | '.' | '-') as c ->
+ String.make 1 c
+ | c ->
+ sprintf "%%%02x" (Char.code c)
+ ) :: !xs
+ done;
+ String.concat "" (List.rev !xs)
+
(* Memoized session cookie. *)
let session_cookie = ref ""
--
2.5.0