Source Code Cross Referenced for WosFramework.java in  » Web-Framework » webonswing » net » ar » webonswing » Java Source Code / Java DocumentationJava Source Code and Java Documentation

Java Source Code / Java Documentation
1. 6.0 JDK Core
2. 6.0 JDK Modules
3. 6.0 JDK Modules com.sun
4. 6.0 JDK Modules com.sun.java
5. 6.0 JDK Modules sun
6. 6.0 JDK Platform
7. Ajax
8. Apache Harmony Java SE
9. Aspect oriented
10. Authentication Authorization
11. Blogger System
12. Build
13. Byte Code
14. Cache
15. Chart
16. Chat
17. Code Analyzer
18. Collaboration
19. Content Management System
20. Database Client
21. Database DBMS
22. Database JDBC Connection Pool
23. Database ORM
24. Development
25. EJB Server geronimo
26. EJB Server GlassFish
27. EJB Server JBoss 4.2.1
28. EJB Server resin 3.1.5
29. ERP CRM Financial
30. ESB
31. Forum
32. GIS
33. Graphic Library
34. Groupware
35. HTML Parser
36. IDE
37. IDE Eclipse
38. IDE Netbeans
39. Installer
40. Internationalization Localization
41. Inversion of Control
42. Issue Tracking
43. J2EE
44. JBoss
45. JMS
46. JMX
47. Library
48. Mail Clients
49. Net
50. Parser
51. PDF
52. Portal
53. Profiler
54. Project Management
55. Report
56. RSS RDF
57. Rule Engine
58. Science
59. Scripting
60. Search Engine
61. Security
62. Sevlet Container
63. Source Control
64. Swing Library
65. Template Engine
66. Test Coverage
67. Testing
68. UML
69. Web Crawler
70. Web Framework
71. Web Mail
72. Web Server
73. Web Services
74. Web Services apache cxf 2.0.1
75. Web Services AXIS2
76. Wiki Engine
77. Workflow Engines
78. XML
79. XML UI
Java
Java Tutorial
Java Open Source
Jar File Download
Java Articles
Java Products
Java by API
Photoshop Tutorials
Maya Tutorials
Flash Tutorials
3ds-Max Tutorials
Illustrator Tutorials
GIMP Tutorials
C# / C Sharp
C# / CSharp Tutorial
C# / CSharp Open Source
ASP.Net
ASP.NET Tutorial
JavaScript DHTML
JavaScript Tutorial
JavaScript Reference
HTML / CSS
HTML CSS Reference
C / ANSI-C
C Tutorial
C++
C++ Tutorial
Ruby
PHP
Python
Python Tutorial
Python Open Source
SQL Server / T-SQL
SQL Server / T-SQL Tutorial
Oracle PL / SQL
Oracle PL/SQL Tutorial
PostgreSQL
SQL / MySQL
MySQL Tutorial
VB.Net
VB.Net Tutorial
Flash / Flex / ActionScript
VBA / Excel / Access / Word
XML
XML Tutorial
Microsoft Office PowerPoint 2007 Tutorial
Microsoft Office Excel 2007 Tutorial
Microsoft Office Word 2007 Tutorial
Java Source Code / Java Documentation » Web Framework » webonswing » net.ar.webonswing 
Source Cross Referenced  Class Diagram Java Document (Java Doc) 


001:        // WebOnSwing - Web Application Framework
002:        //	Copyright (C) 2003 Fernando Damian Petrola
003:        //	
004:        //	This library is free software; you can redistribute it and/or
005:        //	modify it under the terms of the GNU Lesser General Public
006:        //	License as published by the Free Software Foundation; either
007:        //	version 2.1 of the License, or (at your option) any later version.
008:        //	
009:        //	This library is distributed in the hope that it will be useful,
010:        //	but WITHOUT ANY WARRANTY; without even the implied warranty of
011:        //	MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
012:        //	Lesser General Public License for more details.
013:        //	
014:        //	You should have received a copy of the GNU Lesser General Public
015:        //	License along with this library; if not, write to the Free Software
016:        //	Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
017:
018:        package net.ar.webonswing;
019:
020:        import java.util.*;
021:
022:        import javax.swing.*;
023:
024:        import net.ar.webonswing.helpers.*;
025:        import net.ar.webonswing.managers.contributors.*;
026:        import net.ar.webonswing.managers.names.*;
027:        import net.ar.webonswing.managers.pages.*;
028:        import net.ar.webonswing.managers.state.*;
029:        import net.ar.webonswing.managers.templates.*;
030:        import net.ar.webonswing.managers.windows.*;
031:        import net.ar.webonswing.render.templates.*;
032:        import net.ar.webonswing.swing.layouts.*;
033:        import net.ar.webonswing.wrapping.*;
034:
035:        import org.apache.commons.logging.*;
036:
037:        /**
038:         * Contiene todos los administradores necesarios para interactuar con el
039:         * framework desde Swing y los contribuyentes
040:         * 
041:         * @author Fernando Damian Petrola
042:         */
043:        public class WosFramework {
044:            public String pageManagerConfigXmlFile;
045:            public String templateManagerConfigXmlFile;
046:            public String contributorManagerConfigXmlFile;
047:
048:            public String windowTreeStateManagerConfigSerializedFile;
049:
050:            public String windowManagerClassName;
051:            public String hierarchyWrapperClassName;
052:            public String componentNameManagerClassName;
053:
054:            public String resourcesPath;
055:            public boolean compressPersistedData = false;
056:            public boolean catchExceptions = true;
057:
058:            transient protected static WosFramework theInstance;
059:
060:            transient public String contextPath = "";
061:            public static final String TRANSFORMATION_PACKAGE = "transformation-package";
062:            transient public static final String contributor_property = "theContributor";
063:            transient public static String wosframework_config_file = "/net/ar/webonswing/config/webonswing-framework.config.xml";
064:            transient protected PageManager thePageManager;
065:            transient protected TemplateManager theTemplateManager;
066:            transient protected ContributorManager theContributorManager;
067:            transient protected WindowTreeStateManager theWindowTreeStateManager;
068:            transient protected static boolean active = false;
069:
070:            transient protected static InheritableThreadLocal sessionContext = new InheritableThreadLocal();
071:            transient protected static Hashtable applicationContext = new Hashtable();
072:
073:            public static final String USE_WOS_CLASSLOADER = "use-wos-classloader";
074:
075:            public static WosFramework getInstance() {
076:                if (theInstance == null)
077:                    theInstance = (WosFramework) WosHelper
078:                            .restoreObjectFromXml(wosframework_config_file);
079:
080:                return theInstance;
081:            }
082:
083:            public void init() {
084:                try {
085:                    initPageManager();
086:                    initTemplateManager();
087:                    initContributorManager();
088:                    initWindowTreeStateManager();
089:
090:                    System.setProperty("awt.toolkit",
091:                            "net.ar.webonswing.toolkit.WosToolkit");
092:                    System.setProperty("java.awt.graphicsenv",
093:                            "net.ar.webonswing.toolkit.WosGraphicsEnvironment");
094:                    UIManager
095:                            .installLookAndFeel("WebOnSwing",
096:                                    "net.ar.webonswing.toolkit.lookandfeel.DummyLookAndFeel");
097:                    UIManager
098:                            .setLookAndFeel("net.ar.webonswing.toolkit.lookandfeel.DummyLookAndFeel");
099:                } catch (Exception e) {
100:                    LogFactory.getLog(WosFramework.class).error(
101:                            "WosFramework initialization error", e);
102:                    throw new WebOnSwingException(
103:                            "WosFramework initialization error", e);
104:                }
105:
106:                active = true;
107:            }
108:
109:            public void initTemplateManager() {
110:                theTemplateManager = (TemplateManager) WosHelper
111:                        .restoreObjectFromXml(templateManagerConfigXmlFile);
112:            }
113:
114:            public void initPageManager() {
115:                thePageManager = (PageManager) WosHelper
116:                        .restoreObjectFromXml(pageManagerConfigXmlFile);
117:            }
118:
119:            public void initContributorManager() {
120:                theContributorManager = (ContributorManager) WosHelper
121:                        .restoreObjectFromXml(contributorManagerConfigXmlFile);
122:            }
123:
124:            public void initWindowTreeStateManager() {
125:                theWindowTreeStateManager = (WindowTreeStateManager) WosHelper
126:                        .getObjectFromFile(WosHelper
127:                                .getResourceAsStream(windowTreeStateManagerConfigSerializedFile));
128:            }
129:
130:            public void persistWosFramework() {
131:                WosHelper.persistObjectToXml(getInstance(),
132:                        wosframework_config_file);
133:            }
134:
135:            public void persistTemplateManager() {
136:                WosHelper.persistObjectToXml(getTemplateManager(),
137:                        templateManagerConfigXmlFile);
138:            }
139:
140:            public void persistPageManager() {
141:                WosHelper.persistObjectToXml(getPageManager(),
142:                        pageManagerConfigXmlFile);
143:            }
144:
145:            public void persistContributorManager() {
146:                WosHelper.persistObjectToXml(getContributorManager(),
147:                        contributorManagerConfigXmlFile);
148:            }
149:
150:            public void persistWindowTreeStateManager() {
151:                WosHelper.serializeObjectToFile(getWindowTreeStateManager(),
152:                        windowTreeStateManagerConfigSerializedFile);
153:                //WosHelper.persistObjectToXml(theWindowTreeStateManager, StringUtils.replace(window_tree_state_manager_config_serialized_file, "serialized", "xml"));
154:            }
155:
156:            /**
157:             * Encuentra una plantilla con el nombre o ruta especificada
158:             * 
159:             * @param aTemplateName
160:             *           nombre o ruta de la plantilla a encontrar
161:             * @return
162:             */
163:            public static KeyPositionTemplate getKeyPositionTemplateForName(
164:                    String aTemplateName) {
165:                return getInstance().getTemplateManager()
166:                        .getKeyPositionTemplateForName(aTemplateName);
167:            }
168:
169:            public static KeyPositionTemplate getKeyPositionTemplateForSubTemplate(
170:                    Template aTemplate, String aPath) {
171:                return getInstance().getTemplateManager()
172:                        .getKeyPositionTemplateForSubTemplate(aTemplate, aPath);
173:            }
174:
175:            public static PropagateTemplateLayoutByName getPropagateTemplateLayoutByNameFor(
176:                    String aTemplateName) {
177:                return new PropagateTemplateLayoutByName(
178:                        getKeyPositionTemplateForName(aTemplateName));
179:            }
180:
181:            /**
182:             * Devuelve un TemplateLayout a partir del nombre o ruta de una plantilla
183:             * 
184:             * @param aName
185:             *           nombre o ruta de plantilla
186:             * @return
187:             */
188:            public static TemplateLayout getTemplateLayoutForName(String aName) {
189:                return new TemplateLayout(getKeyPositionTemplateForName(aName));
190:            }
191:
192:            public static TemplateLayout getTemplateLayoutForSubTemplate(
193:                    Template aTemplate, String aPath) {
194:                return new TemplateLayout(getKeyPositionTemplateForSubTemplate(
195:                        aTemplate, aPath));
196:            }
197:
198:            public static void showChildWindow(Object anOpenerWindow,
199:                    Object aWindowToShow) {
200:                getInstance().getWindowManager().showChildWindow(
201:                        anOpenerWindow, aWindowToShow);
202:            }
203:
204:            public static void showAndExecute(Object anOpenerWindow,
205:                    Object aWindowToShow, String aMethodName) {
206:                getInstance().getWindowManager().showAndExecute(anOpenerWindow,
207:                        aWindowToShow, aMethodName);
208:            }
209:
210:            public static void hide(Object aWindow) {
211:                getInstance().getWindowManager().hide(aWindow);
212:            }
213:
214:            public static void assignContributor(JComponent aComponent,
215:                    Class aContributor) {
216:                aComponent.putClientProperty(contributor_property, aContributor
217:                        .getName());
218:            }
219:
220:            public static void assignContributor(JComponent aComponent,
221:                    String aContributorClassName) {
222:                aComponent.putClientProperty(contributor_property,
223:                        aContributorClassName);
224:            }
225:
226:            public static void assignContributor(JComponent aComponent,
227:                    ComponentContributor aContributor) {
228:                aComponent
229:                        .putClientProperty(contributor_property, aContributor);
230:            }
231:
232:            public static void assignContributor(
233:                    RootPaneContainer aRootPaneContainer, Class aContributor) {
234:                assignContributor(aRootPaneContainer.getRootPane(),
235:                        aContributor);
236:            }
237:
238:            public static void assignContributor(
239:                    RootPaneContainer aRootPaneContainer,
240:                    String aContributorClassName) {
241:                assignContributor(aRootPaneContainer.getRootPane(),
242:                        aContributorClassName);
243:            }
244:
245:            public static void assignContributor(
246:                    RootPaneContainer aRootPaneContainer,
247:                    ComponentContributor aContributor) {
248:                assignContributor(aRootPaneContainer.getRootPane(),
249:                        aContributor);
250:            }
251:
252:            public void setPageManager(PageManager anPageManager) {
253:                thePageManager = anPageManager;
254:            }
255:
256:            public void setTemplateManager(TemplateManager anTemplateManager) {
257:                theTemplateManager = anTemplateManager;
258:            }
259:
260:            public void setWindowTreeStateManager(
261:                    WindowTreeStateManager anWindowTreeStateManager) {
262:                theWindowTreeStateManager = anWindowTreeStateManager;
263:            }
264:
265:            public WindowTreeStateManager getWindowTreeStateManager() {
266:                return theWindowTreeStateManager;
267:            }
268:
269:            public PageManager getPageManager() {
270:                return thePageManager;
271:            }
272:
273:            public TemplateManager getTemplateManager() {
274:                return theTemplateManager;
275:            }
276:
277:            public static ComponentNameManager getComponentNameManager() {
278:                if (getInstance().componentNameManagerClassName.length() > 0)
279:                    return (ComponentNameManager) WosHelper
280:                            .createClassInstance(getInstance().componentNameManagerClassName);
281:                else
282:                    return null;
283:            }
284:
285:            public String getCompleteResourcePath() {
286:                return getContextPath() + getResourcesPath();
287:            }
288:
289:            public static Map getSessionContext() {
290:                Map sessionContextInstance = (Map) sessionContext.get();
291:
292:                if (sessionContextInstance == null) {
293:                    sessionContextInstance = new Hashtable();
294:                    sessionContext.set(sessionContextInstance);
295:                }
296:
297:                return sessionContextInstance;
298:            }
299:
300:            public static Map getApplicationContext() {
301:                return applicationContext;
302:            }
303:
304:            public ContributorManager getContributorManager() {
305:                return theContributorManager;
306:            }
307:
308:            public void setContributorManager(
309:                    ContributorManager unContributorManager) {
310:                theContributorManager = unContributorManager;
311:            }
312:
313:            public static boolean isActive() {
314:                return active;
315:            }
316:
317:            public static void setActive(boolean anActive) {
318:                active = anActive;
319:            }
320:
321:            public String getResourcesPath() {
322:                return resourcesPath;
323:            }
324:
325:            public void setResourcesPath(String aString) {
326:                getInstance().resourcesPath = aString;
327:            }
328:
329:            public HierarchyWrapper getHierarchyWrapper() {
330:                if (getInstance().hierarchyWrapperClassName.length() > 0)
331:                    return (HierarchyWrapper) WosHelper
332:                            .createClassInstance(getInstance().hierarchyWrapperClassName);
333:                else
334:                    return null;
335:            }
336:
337:            public WindowManager getWindowManager() {
338:                return (WindowManager) WosHelper
339:                        .createClassInstance(getInstance().windowManagerClassName);
340:            }
341:
342:            public boolean isCompressPersistedData() {
343:                return compressPersistedData;
344:            }
345:
346:            public void setCompressPersistedData(boolean aB) {
347:                compressPersistedData = aB;
348:            }
349:
350:            public String getContextPath() {
351:                return contextPath;
352:            }
353:
354:            public void setContextPath(String aString) {
355:                contextPath = aString;
356:            }
357:
358:            public boolean isCatchExceptions() {
359:                return catchExceptions;
360:            }
361:
362:            public void setCatchExceptions(boolean b) {
363:                catchExceptions = b;
364:            }
365:
366:            public static boolean useWosClassLoader() {
367:                return System.getProperty(WosFramework.USE_WOS_CLASSLOADER) != null
368:                        && System.getProperty(WosFramework.USE_WOS_CLASSLOADER)
369:                                .equals("true");
370:            }
371:
372:        }
www.java2java.com | Contact Us
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.