Source Code Cross Referenced for BeanModelAlterer.java in  » Web-Framework » RSF » uk » org » ponder » beanutil » 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 » RSF » uk.org.ponder.beanutil 
Source Cross Referenced  Class Diagram Java Document (Java Doc) 


01:        /*
02:         * Created on Nov 4, 2005
03:         */
04:        package uk.org.ponder.beanutil;
05:
06:        import uk.org.ponder.mapping.DAREnvironment;
07:        import uk.org.ponder.mapping.DARList;
08:        import uk.org.ponder.mapping.DataAlterationRequest;
09:        import uk.org.ponder.mapping.ShellInfo;
10:        import uk.org.ponder.messageutil.TargettedMessageList;
11:
12:        /** The base interface for RSF's expression language (EL) */
13:
14:        public interface BeanModelAlterer {
15:
16:            /** Fetch a bean value by path from the supplied object root.
17:             * @param fullpath The path of the bean to fetch
18:             * @param root The root object which the path is relative to
19:             * @param addressibleModel A model expressing permissible paths. May be <code>null</code>
20:             * if the path requires no checking.
21:             */
22:            public Object getBeanValue(String fullpath, Object root,
23:                    BeanPredicateModel addressibleModel);
24:
25:            public void setBeanValue(String fullpath, Object root,
26:                    Object value, TargettedMessageList messages,
27:                    boolean applyconversion);
28:
29:            /** Invoke a bean method from a path in the model. 
30:             * @param shells An encoding of the method to be invoked, assumed to be fetched from
31:             * {@link #fetchShells(String, Object)} -  the section of the path
32:             * referring to bean paths has terminated at the last bean present in the
33:             * {@link ShellInfo#shells} array. The next path segment is assumed to be
34:             * the method name, and the final section is filled with arguments.
35:             * @param addressibleModel A model for the beans which are permissible to be
36:             * addressed for this invocation. May be <code>null</code> if no security
37:             * checks are required. 
38:             */
39:            public Object invokeBeanMethod(ShellInfo shells,
40:                    BeanPredicateModel addressibleModel);
41:
42:            /** Invoke a bean method from a path in the model. */
43:            public Object invokeBeanMethod(String methodEL, Object rootobj);
44:
45:            /**
46:             * Apply the alterations mentioned in the enclosed DARList to the supplied
47:             * bean. Note that this method assumes that the TargettedMessageList is
48:             * already navigated to the root path referred to by the bean, and that the
49:             * DARList mentions paths relative to that bean.
50:             * 
51:             * @param rootobj The object to which alterations are to be applied
52:             * @param toapply The list of alterations
53:             * @param darenv A {@link DAREnvironment} record supplying any environment
54:             * require for the application. May be <code>null</code>
55:             */
56:            public void applyAlterations(Object rootobj, DARList toapply,
57:                    DAREnvironment darenv);
58:
59:            /** @see #applyAlterations(Object, DARList, TargettedMessageList) * */
60:            public void applyAlteration(Object rootobj,
61:                    DataAlterationRequest dar, DAREnvironment darenv);
62:
63:            /** Fetch the "shells" for the specified path through the bean model, which
64:             * is an array of Object, one for each path segment in the supplied path. The
65:             * array will quietly terminate at the first bean which is either <code>null</code> or
66:             * a DARApplier. If <code>expectMethod</code> is true, it will also stop at
67:             * any segment which is an exact match for a method name, or a MethodInvokingProxy.
68:             */
69:            public ShellInfo fetchShells(String fullpath, Object rootobj,
70:                    boolean expectMethod);
71:
72:            /**
73:             * Converts the object currently present at the supplied bean path into the
74:             * specified target class, which must be one of the classes handled by the
75:             * UIType framework.
76:             * 
77:             * @param fullpath The full EL path from the root object from which the
78:             *          flattened value is to be fetched.
79:             * @param root The root object
80:             * @param targetclazz A class of one of the UIType types, or else
81:             *          <code>null</code>. If <code>null</code>, the type of the
82:             *          returned object will be either String[] or String, depending on
83:             *          whether the path holds an enumerable (vectorial) value or not.
84:             * @param resolver A resolver which will be applied to each scalar value to
85:             *          convert it to String if necessary. If <code>null</code>,
86:             *          default leaf conversion will be applied.
87:             */
88:
89:            public Object getFlattenedValue(String fullpath, Object root,
90:                    Class targetclazz, BeanResolver resolver);
91:        }
www.java2java.com | Contact Us
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.