ontomde-uml2-struts 1.0.4

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1 @@
1
+ # nop
@@ -0,0 +1,124 @@
1
+
2
+ module Muml_Class
3
+ def struts_jspEditwriteSelfJSInclude
4
+ js_include=struts_jsp_edit_path.gsub(/\.[^\/]*$/,".js.jsp")
5
+ write(%{<script language="Javascript" src="#{js_include}" ></script>\n})
6
+ end
7
+ def struts_jspEdit_generateJavascript
8
+ js_include=context[:mtk_fileName].gsub(/\.[^\/]*$/,".js.jsp")
9
+ mtk_writeSession("#{js_include}") {
10
+ struts_jspEdit_generateJavascript_jspHeader
11
+ #write("<SCRIPT>\n")
12
+ struts_jspEdit_generateJavascript_commun
13
+ struts_jspEdit_generateJavascript_operations
14
+ struts_jspEdit_generateJavascript_edit_remove_add
15
+ #write "</SCRIPT>\n"
16
+ }
17
+ end
18
+
19
+ def struts_jspEdit_generateJavascript_jspHeader
20
+ write <<END
21
+ <%@ page contentType="text/javascript;charset=UTF-8" %>
22
+ <%@ taglib uri="http://struts.apache.org/tags-bean" prefix="bean" %>
23
+ <%@ taglib uri="http://struts.apache.org/tags-html" prefix="html" %>
24
+ <%@ taglib uri="http://struts.apache.org/tags-logic" prefix="logic" %>
25
+ END
26
+ end
27
+
28
+ def struts_jspEdit_generateJavascript_operations
29
+ umlx_ownedAndInheritedOperation.each {|biz|
30
+ next unless biz.umlx_businessMethod?
31
+ f=biz.java_Name
32
+ write(%{
33
+ function #{f}() {
34
+ document.forms[0].#{Muml_Class::STRUTS_DISPATCH_FIELD_NAME}.value="#{f}";
35
+ document.forms[0].submit();
36
+ }
37
+ })
38
+ }
39
+ end
40
+
41
+ def struts_jspEdit_generateJavascript_commun
42
+ write <<END_SCRIPT
43
+ function #{STRUTS_REFRESH_ACTION}(tabid) {
44
+ document.forms[0].#{Muml_Class::STRUTS_REQUESTED_TAB}.value=tabid;
45
+ document.forms[0].#{Muml_Class::STRUTS_DISPATCH_FIELD_NAME}.value="#{STRUTS_REFRESH_ACTION}";
46
+ document.forms[0].submit();
47
+ }
48
+ function #{STRUTS_RETURN_ACTION}() {
49
+ document.forms[0].#{Muml_Class::STRUTS_DISPATCH_FIELD_NAME}.value="#{STRUTS_RETURN_ACTION}";
50
+ document.forms[0].submit();
51
+ }
52
+ function #{STRUTS_PROCEED_ACTION}() {
53
+ document.forms[0].#{Muml_Class::STRUTS_DISPATCH_FIELD_NAME}.value="#{STRUTS_PROCEED_ACTION}";
54
+ document.forms[0].submit();
55
+ }
56
+
57
+ function transformToServerFormat(date, field, locale) {
58
+ var time = date.getTime()
59
+ var date2 = new Date(time);
60
+ return date2.print("%Y/%m/%d %H:%M:%S", locale);
61
+ }
62
+ function hide_sel(id){
63
+ var s = document.getElementsByTagName('select');
64
+ var len = s.length;
65
+ for (i = 0; i<len; i++){
66
+ s[i].style.visibility = 'hidden';
67
+ }
68
+ document.getElementById(id).style.visibility = 'visible';
69
+
70
+ }
71
+
72
+ function show_sel(id){
73
+ var s = document.getElementsByTagName('select');
74
+ var len = s.length;
75
+ for (i = 0; i<len; i++){
76
+ s[i].style.visibility = 'visible';
77
+ }
78
+ document.getElementById(id).style.visibility = 'hidden';
79
+ }
80
+
81
+
82
+ END_SCRIPT
83
+ end
84
+
85
+ def struts_jspEdit_generateJavascript_edit_remove_add
86
+ context[:struts_tab].struts_ownedAttribute.each { |a|
87
+ #next unless a.umlx_isComposite?
88
+ #next unless a.umlx_isAssociation?
89
+ #next if a.umlx_oneSide?
90
+ ["edit","add"].each {|meth|
91
+ f="#{meth}#{a.java_NameBean}"
92
+ write <<END
93
+
94
+ function #{f}(objid) {
95
+ if("_"+objid != "_empty") {
96
+ document.forms[0].#{Muml_Class::STRUTS_DISPATCH_FIELD_NAME}.value="#{f}";
97
+ document.forms[0].#{Muml_Class::STRUTS_REQUESTED_TAB}.value=objid;
98
+ document.forms[0].submit();
99
+ } else {
100
+ alert("no element selected for \\n#{struts_writeMsg("#{self.java_qualifiedName}.#{a.java_Name}")}");
101
+ }
102
+ }
103
+ END
104
+
105
+ }
106
+
107
+ write <<END
108
+
109
+ function removeAndDelete#{a.java_NameBean}(objid) {
110
+ if (window.confirm('<bean:message key="userMessage.deleteItem"/>')) {
111
+ if("_"+objid != "_empty") {
112
+ document.forms[0].#{Muml_Class::STRUTS_DISPATCH_FIELD_NAME}.value="removeAndDelete#{a.java_NameBean}";
113
+ document.forms[0].#{Muml_Class::STRUTS_REQUESTED_TAB}.value=objid;
114
+ document.forms[0].submit();
115
+ } else {
116
+ alert("no element selected for \\n#{struts_writeMsg("#{self.java_qualifiedName}.#{a.java_Name}")}");
117
+ }
118
+ }
119
+ }
120
+ END
121
+ }
122
+ end
123
+
124
+ end #module
@@ -0,0 +1,131 @@
1
+ module Mrdf_Model
2
+
3
+ def struts_index_generate
4
+
5
+ mtk_writeSession( %{#{context[:webContentDir]}/index.jsp} ) {
6
+ mtk_context( :struts_curClass => self) {
7
+ write <<END
8
+ <?xml version="1.0" encoding="ISO-8859-1" ?>
9
+ <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
10
+ <%@ page contentType="text/html;charset=ISO8859-1" %>
11
+ <%@ taglib uri="http://struts.apache.org/tags-bean" prefix="bean" %>
12
+ <%@ taglib uri="http://struts.apache.org/tags-html" prefix="html" %>
13
+ <%@ taglib uri="http://struts.apache.org/tags-logic" prefix="logic" %>
14
+
15
+ <html:html>
16
+ <head>
17
+ <script src="res//orange/script/initialization.js" type="text/javascript"></script>
18
+ <script src="res//orange/script/main.js" type="text/javascript"></script>
19
+ <link rel="stylesheet" type="text/css" href="res//orange/css/layout.css"/>
20
+ <link rel="stylesheet" type="text/css" href="res//orange/css/content.css"/>
21
+ <link rel="stylesheet" type="text/css" media="print" href="res//orange/css/print.css"/>
22
+ <script type="text/javascript" language="Javascript" src="res//orange/script/fonctionsJS-archimede.js"></script>
23
+
24
+ <title>Index -- Generated with XMDA</title>
25
+ </head>
26
+ <body >
27
+
28
+ <html:form action="#{STRUTS_ACTION_LOCALE_URL}">
29
+ <%-- not necessary in jsp_index debug form --%>
30
+ <input type="hidden" name="#{Muml_Class::STRUTS_DISPATCH_FIELD_NAME}" />
31
+
32
+ <logic:messagesPresent>
33
+ <bean:message key="errors.header"/>
34
+ <ul>
35
+ <html:messages id="error">
36
+ <li><bean:write name="error"/></li>
37
+ </html:messages>
38
+ </ul><hr />
39
+ </logic:messagesPresent>
40
+ <center>
41
+
42
+ END
43
+
44
+ struts_header_generate
45
+ write <<END
46
+ <!-- **************************************
47
+ ************ CORPS DE PAGE **************
48
+ **************************************** -->
49
+ <center>
50
+ <div class="milieu">
51
+ <div class="contenusansMenu">
52
+ <!-- Indicateur Hi�rarchique -->
53
+ <div class="indicateur"><h1>Accueil</h1></div>
54
+ <a name="contenu"></a>
55
+ <!-- Corps de Page -->
56
+ <h2 style="font-size:120%">Generated with XMDA</h2>
57
+ <ul>
58
+ END
59
+ pkg=Hash.new
60
+ uml_Class_all.each {|c|
61
+ next if c.kind_of?(Muml_Enumeration)
62
+ next if c.kind_of?(Muml_Class)&& !c.umlx_isReallyAClass?
63
+ next if c.java_ignoreMe?
64
+ #puts "JSP_INDEX #{c}::#{c.class.name} #{c.db_isTransient?}"
65
+ #next if c.db_isTransient?
66
+ #next if c.java_DAOClass.empty?
67
+ next if c.struts_action.empty?
68
+ p=c.uml_ownedMember_inv_one
69
+ pkg[p]=Array.new if pkg[p].nil?
70
+ pkg[p] << c
71
+ }
72
+ write %{<table border="1" style="border-style: ; border: gray; border-spacing:0px">}
73
+ write %{<tr bgcolor="#EEEEEE" width="10%"><td valign="center"><a name="index"/><h3>Package index</h3></td><td><ul>}
74
+ pkg.keys.sort {|a,b| a.java_qualifiedName.to_s <=> b.java_qualifiedName.to_s }.each { |p|
75
+ write %{<li><a href="##{p.java_qualifiedName}">#{p.java_qualifiedName}</a></li> }
76
+ }
77
+ write "</ul></td></tr>"
78
+ pkg.keys.sort {|a,b| a.uml_name.to_s <=> b.uml_name.to_s }.each { |p|
79
+ write %{<tr><td valign="center"><h3><a name="#{p.java_qualifiedName}"/><a href="#index">#{p.java_qualifiedName.gsub(/\./," .")}</a></h3></td><td><ul>}
80
+ pkg[p].sort { |a,b| a.uml_name.to_s <=> b.uml_name.to_s }.each {|c|
81
+ write <<END
82
+ #{if (!c.uml_isAbstract?)
83
+ %{<li>#{c.uml_name}: <html:link page="/#{c.java_Name}-new.do?doWhat=newa">new</html:link> #{%{ (transient)} if c.db_isTransient? }
84
+ #{ %{
85
+ <%
86
+ for (java.util.Iterator<?> iter = #{c.db_getFindAllCall}.iterator(); iter.hasNext();) {
87
+ #{c.java_qualifiedName} c=(#{c.java_qualifiedName})iter.next();
88
+
89
+ out.println(", <a href=\\"#{c.java_Name}-new.do?doWhat=sgbd_read&id="+c.getId()+"\\">"+c.getId()+"</a>");
90
+ }
91
+ %>
92
+ } unless (c.db_isTransient? || c.java_DAOClass.empty?) }
93
+
94
+ </li>}
95
+ else
96
+ %{}
97
+ end
98
+ }
99
+ END
100
+ }
101
+
102
+
103
+ write("</ul></td></tr>")
104
+ }
105
+ write <<END
106
+ </table>
107
+ </span>
108
+
109
+ </div>
110
+ </div>
111
+ <%-- TODO: html:xxx --%>
112
+ <div class="bodyBottom"></div>
113
+ <input type="hidden" name="page" value="/Welcome.do"/>
114
+ END
115
+
116
+ struts_footer_generate
117
+ write <<END
118
+ </div>
119
+
120
+
121
+
122
+ </center>
123
+ </html:form>
124
+
125
+ </body>
126
+ </html:html>
127
+ END
128
+ }
129
+ }
130
+ end
131
+ end