ontomde-core 1.0.2 → 1.0.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,133 +1,145 @@
1
- # File types supported for round trip.
2
- # Other File types may be added easily.
3
-
4
- class FileType
5
- include Singleton
6
- attr_reader :re_begin, :re_end
7
- @@types=Hash.new
8
- def initialize(type)
9
- #puts "type=#{type}"
10
- @@types[type]=self
11
- end
12
- def writeComment(str,writer)
13
- raise Warning.new(), "Internal error. Undefined method"
14
- end
15
- def beginMarker(str,id)
16
- raise Warning.new(), "Internal error. Undefined method"
17
- end
18
- def endMarker(str,id)
19
- raise Warning.new(), "Internal error. Undefined method"
20
- end
21
- def FileType.getFileType(fileName)
22
- ext=File.extname(fileName)
23
- type=@@types[ext]
24
- return type if ! type.nil?
25
- msg="Unknown File Type \"#{ext}\" for \"#{fileName}\""
26
- log.debug(msg)
27
- raise WarningUnknownFileType.new(),msg
28
- end
29
- # escape text to be included in markers
30
- def escape(txt)
31
- return txt
32
- end
33
- #unescape text to be read from markers
34
- def unescape(txt)
35
- return txt
36
- end
37
- end
38
-
39
- class FileTypeJava < FileType
40
- include Singleton
41
- def initialize(ext=".java")
42
- super(ext)
43
- @re_begin=Regexp.new(/^[ \t]*\/\*[ _]*XMDA[ _]BEGIN[ _]+reverse="(.*)"[ _]uri="(.*)"[ _]*\*\//)
44
- @re_end=Regexp.new(/^[ \t]*\/\*[ _]*XMDA[ _]END[ _]+uri="(.*)"[ _]*\*\//)
45
- end
46
- def writeComment(str,writer)
47
- writer.write("/* #{str} */")
48
- end
49
- def thinLineComment
50
- #return context[:thinLineComment,true] ? ('_'*60) : ''
51
- #return "_____________________________________________________________________________________________________________________________________________"
52
- return ""
53
- end
54
- def beginMarker(uri,reverse)
55
- return %{\n/*XMDA_BEGIN_reverse="#{reverse ? 'yes':'no'}"_#{thinLineComment}uri="#{uri}"_*/\n}
56
- end
57
- def endMarker(uri)
58
- return %{\n/*XMDA_END_#{thinLineComment}uri="#{uri}"_*/\n}
59
- end
60
- end
61
- FileTypeJava.instance # register
62
-
63
- class FileTypeXML < FileType
64
- # a character that can not exist in a URI
65
- URI_ESCAPE_CHAR_ONE='�'
66
- def initialize(ext=".xml")
67
- super(ext)
68
- @re_begin=/^[ \t]*<\!-- *XMDA BEGIN +reverse="([^"]*)" uri="([^"]*)" *-->/
69
- @re_end=/^[ \t]*<\!-- *XMDA END +uri="([^"]*)" *-->/
70
- end
71
- def writeComment(str,writer)
72
- writer.write("<!-- #{str} -->")
73
- end
74
- def beginMarker(uri,reverse)
75
- return %{\n<!-- XMDA BEGIN reverse="#{reverse ? 'yes':'no'}" uri="#{escape(uri)}" -->\n}
76
- end
77
- def endMarker(uri)
78
- return %{\n<!-- XMDA END uri="#{escape(uri)}" -->\n}
79
- end
80
- def escape(txt)
81
- return txt.tr('-',URI_ESCAPE_CHAR_ONE)
82
- end
83
- def unescape(txt)
84
- return txt.tr(URI_ESCAPE_CHAR_ONE,'-')
85
- end
86
- end
87
- FileTypeXML.instance # register
88
-
89
-
90
- class FileTypeJavaProperties < FileType
91
- def initialize(ext=".properties")
92
- super(ext)
93
- @re_begin=/^[ \t]*#[_ ]*XMDA_BEGIN_reverse="([^"]*)"_uri="([^"]*)"[ _]*$/
94
- @re_end=/^[ \t]*#[ _]*XMDA_END_uri="([^"]*)"[ _]*$/
95
- end
96
- def writeComment(str,writer)
97
- writer.write("# #{str} ")
98
- end
99
- def beginMarker(uri,reverse)
100
- return %{\n#_XMDA_BEGIN_reverse="#{reverse ? 'yes':'no'}"_uri="#{uri}"\n}
101
- end
102
- def endMarker(uri)
103
- return %{\n#_XMDA_END_uri="#{uri}"\n}
104
- end
105
- end
106
- FileTypeJavaProperties.instance # register
107
-
108
-
109
-
110
-
111
- class FileTypeJSP < FileType
112
- include Singleton
113
- def initialize(ext=".jsp")
114
- super(ext)
115
- @re_begin=Regexp.new(/^[ \t]*<%--*[ _]*XMDA[ _]BEGIN[ _]*reverse="(.*)"[ _]uri="(.*)"[ _]*--%>/)
116
- @re_end=Regexp.new(/^[ \t]*<%--[ _]*XMDA[ _]END[ _]*uri="(.*)"[ _]*--%>/)
117
- end
118
- def writeComment(str,writer)
119
- writer.write("<%-- #{str} --%>")
120
- end
121
- def thinLineComment
122
- #return context[:thinLineComment,true] ? ('_'*60) : ''
123
- #return "_____________________________________________________________________________________________________________________________________________"
124
- return ""
125
- end
126
- def beginMarker(uri,reverse)
127
- return %{\n<%--_XMDA_BEGIN_reverse="#{reverse ? 'yes':'no'}"_#{thinLineComment}uri="#{uri}"_--%>\n}
128
- end
129
- def endMarker(uri)
130
- return %{\n<%--_XMDA_END_#{thinLineComment}uri="#{uri}"_--%>\n}
131
- end
132
- end
133
- FileTypeJSP.instance # register
1
+ # File types supported for round trip.
2
+ # Other File types may be added easily.
3
+
4
+ class FileType
5
+ include Singleton
6
+ attr_reader :re_begin, :re_end
7
+ @@types=Hash.new
8
+ def initialize(type)
9
+ #puts "type=#{type}"
10
+ @@types[type]=self
11
+ end
12
+ def writeComment(str,writer)
13
+ raise Warning.new(), "Internal error. Undefined method"
14
+ end
15
+ def beginMarker(str,id)
16
+ raise Warning.new(), "Internal error. Undefined method"
17
+ end
18
+
19
+ #marker placeholder
20
+ #(for use instead of normal marker when shorter file is requested)
21
+ def beginMarkerSkip(str,id)
22
+ return "\n"
23
+ end
24
+ def endMarker(str)
25
+ raise Warning.new(), "Internal error. Undefined method"
26
+ end
27
+
28
+ #marker placeholder
29
+ #(for use instead of normal marker when shorter file is requested)
30
+ def endMarkerSkip(str)
31
+ return "\n"
32
+ end
33
+ def FileType.getFileType(fileName)
34
+ ext=File.extname(fileName)
35
+ type=@@types[ext]
36
+ return type if ! type.nil?
37
+ msg="Unknown File Type \"#{ext}\" for \"#{fileName}\""
38
+ #log.debug(msg)
39
+ raise WarningUnknownFileType.new(),msg
40
+ end
41
+ # escape text to be included in markers
42
+ def escape(txt)
43
+ return txt
44
+ end
45
+ #unescape text to be read from markers
46
+ def unescape(txt)
47
+ return txt
48
+ end
49
+ end
50
+
51
+ class FileTypeJava < FileType
52
+ include Singleton
53
+ def initialize(ext=".java")
54
+ super(ext)
55
+ @re_begin=Regexp.new(/^[ \t]*\/\*[ _]*XMDA[ _]BEGIN[ _]+reverse="(.*)"[ _]uri="(.*)"[ _]*\*\//)
56
+ @re_end=Regexp.new(/^[ \t]*\/\*[ _]*XMDA[ _]END[ _]+uri="(.*)"[ _]*\*\//)
57
+ end
58
+ def writeComment(str,writer)
59
+ writer.write("/* #{str} */")
60
+ end
61
+ def thinLineComment
62
+ #return context[:thinLineComment,true] ? ('_'*60) : ''
63
+ #return "_____________________________________________________________________________________________________________________________________________"
64
+ return ""
65
+ end
66
+ def beginMarker(uri,reverse)
67
+ return %{\n/*XMDA_BEGIN_reverse="#{reverse ? 'yes':'no'}"_#{thinLineComment}uri="#{uri}"_*/\n}
68
+ end
69
+ def endMarker(uri)
70
+ return %{\n/*XMDA_END_#{thinLineComment}uri="#{uri}"_*/\n}
71
+ end
72
+ end
73
+ FileTypeJava.instance # register
74
+
75
+ class FileTypeXML < FileType
76
+ # a character that can not exist in a URI
77
+ URI_ESCAPE_CHAR_ONE='°'
78
+ def initialize(ext=".xml")
79
+ super(ext)
80
+ @re_begin=/^[ \t]*<\!-- *XMDA BEGIN +reverse="([^"]*)" uri="([^"]*)" *-->/
81
+ @re_end=/^[ \t]*<\!-- *XMDA END +uri="([^"]*)" *-->/
82
+ end
83
+ def writeComment(str,writer)
84
+ writer.write("<!-- #{str} -->")
85
+ end
86
+ def beginMarker(uri,reverse)
87
+ return %{\n<!-- XMDA BEGIN reverse="#{reverse ? 'yes':'no'}" uri="#{escape(uri)}" -->\n}
88
+ end
89
+ def endMarker(uri)
90
+ return %{\n<!-- XMDA END uri="#{escape(uri)}" -->\n}
91
+ end
92
+ def escape(txt)
93
+ return txt.tr('-',URI_ESCAPE_CHAR_ONE)
94
+ end
95
+ def unescape(txt)
96
+ return txt.tr(URI_ESCAPE_CHAR_ONE,'-')
97
+ end
98
+ end
99
+ FileTypeXML.instance # register
100
+
101
+
102
+ class FileTypeJavaProperties < FileType
103
+ def initialize(ext=".properties")
104
+ super(ext)
105
+ @re_begin=/^[ \t]*#[_ ]*XMDA_BEGIN_reverse="([^"]*)"_uri="([^"]*)"[ _]*$/
106
+ @re_end=/^[ \t]*#[ _]*XMDA_END_uri="([^"]*)"[ _]*$/
107
+ end
108
+ def writeComment(str,writer)
109
+ writer.write("# #{str} ")
110
+ end
111
+ def beginMarker(uri,reverse)
112
+ return %{\n#_XMDA_BEGIN_reverse="#{reverse ? 'yes':'no'}"_uri="#{uri}"\n}
113
+ end
114
+ def endMarker(uri)
115
+ return %{\n#_XMDA_END_uri="#{uri}"\n}
116
+ end
117
+ end
118
+ FileTypeJavaProperties.instance # register
119
+
120
+
121
+
122
+
123
+ class FileTypeJSP < FileType
124
+ include Singleton
125
+ def initialize(ext=".jsp")
126
+ super(ext)
127
+ @re_begin=Regexp.new(/^[ \t]*<%--*[ _]*XMDA[ _]BEGIN[ _]*reverse="(.*)"[ _]uri="(.*)"[ _]*--%>/)
128
+ @re_end=Regexp.new(/^[ \t]*<%--[ _]*XMDA[ _]END[ _]*uri="(.*)"[ _]*--%>/)
129
+ end
130
+ def writeComment(str,writer)
131
+ writer.write("<%-- #{str} --%>")
132
+ end
133
+ def thinLineComment
134
+ #return context[:thinLineComment,true] ? ('_'*60) : ''
135
+ #return "_____________________________________________________________________________________________________________________________________________"
136
+ return ""
137
+ end
138
+ def beginMarker(uri,reverse)
139
+ return %{\n<%--_XMDA_BEGIN_reverse="#{reverse ? 'yes':'no'}"_#{thinLineComment}uri="#{uri}"_--%>\n}
140
+ end
141
+ def endMarker(uri)
142
+ return %{\n<%--_XMDA_END_#{thinLineComment}uri="#{uri}"_--%>\n}
143
+ end
144
+ end
145
+ FileTypeJSP.instance # register