Java Doc for MethodCut.java in  » Byte-Code » PROSE » ch » ethz » prose » crosscut » 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 » Byte Code » PROSE » ch.ethz.prose.crosscut 
Source Cross Reference  Class Diagram Java Document (Java Doc) 


ch.ethz.prose.crosscut.Crosscut
   ch.ethz.prose.crosscut.AbstractCrosscut
      ch.ethz.prose.crosscut.MethodCut

All known Subclasses:   ch.ethz.prose.crosscut.MethodRedefineCut,
MethodCut
abstract public class MethodCut extends AbstractCrosscut implements java.io.Serializable(Code)
Class MethodCut represents a crosscut. Such a crosscut defines a pattern (for matching specific join-points) and a method to be executed. Users must subclass MethodCut. There are two main modalities for subclassing:

The tipical way (normal user)

Define exactly one method (e.g., METHOD_ARGS(Bar thisO,Baz param1)). This method is both the advice action to be executed and it defines a pattern. Thus, just entries and exits of invocations of the form Bar.*(Baz) will be considered join-points of this crosscut.

This crosscut defines a crosscut for all entry- and exit- points of the matched methods.

Use poointCutter to further restrict the number of points were advices are executed.
version:
   $Revision: 1.3 $
author:
   Andrei Popovici



Field Summary
transient  MethodCutSignaturePatternadviceSignature
    
transient  booleanisInitialized
     If you have more than one method in this class, determining the name of the advice method will use the value of this method.
transient  MethodCutSpecializermcutSpecializer
    
 StringtoStringSignature
    

Constructor Summary
protected  MethodCut()
     We want people to subclass this class.

Method Summary
public  voidMETHOD_ARGS()
     Override the value of this variable if you want to change the name of the method wildcards.
protected  CrosscutRequestdoCreateRequest(Class theClass)
     Retrieve those methods belonging to theClass which have the same signature as the advice methods.
public  PointCutterequivalentSpecializer()
    
public  MethodgetMethod()
     Get advice method, i.e.
public  voidinsertionAction(boolean beforeInsertion)
    
protected  booleanisPotentialCrosscutClass(Class crtCls)
     Return true only if
  1. This crosscut redefines the methodAdvice method, OR
  2. if this crosscut defines an advice, and the corresponding UserDefinedMCSignature matches the target class crtCls.
public  voidjoinPointAction(MethodEntryJoinPoint ev)
     Create an action to execute the advice which matched the method in which the location of jpe resides.
public  voidjoinPointAction(MethodExitJoinPoint ev)
     Create an action to execute the advice which matched the method in which the location of jpe resides.
protected  Class[]potentialCrosscutClasses()
     Return all potential classes to which this crosscut applies: To all loaded classes, apply the isPotentialCrosscutClass selector.
public  StringtoString()
    

Field Detail
adviceSignature
transient MethodCutSignaturePattern adviceSignature(Code)



isInitialized
transient boolean isInitialized(Code)
If you have more than one method in this class, determining the name of the advice method will use the value of this method. This variable should then be initialized with the name of the method you want to call as advice method.



mcutSpecializer
transient MethodCutSpecializer mcutSpecializer(Code)



toStringSignature
String toStringSignature(Code)




Constructor Detail
MethodCut
protected MethodCut() throws MissingInformationException(Code)
We want people to subclass this class. Create a MethodCut object.
throws:
  MissingInformationException - this crosscut doesnot define an advice method / or does not override methodAdvice.




Method Detail
METHOD_ARGS
public void METHOD_ARGS()(Code)
Override the value of this variable if you want to change the name of the method wildcards. Currently, a method-name mathcing everything should have the name METHOD_ARGS



doCreateRequest
protected CrosscutRequest doCreateRequest(Class theClass)(Code)
Retrieve those methods belonging to theClass which have the same signature as the advice methods. Use the UserDefinedMCSignature object (adviceSignature) to determine which methods defined in class theClass match the pattern. (if wildcards are present, they use them to match more methods in theClass)

Return a list of JoinPointRequest objects corresponding to all locations of the matched methods.

This implementation will return just Method-Entry and -Exit locations..




equivalentSpecializer
public PointCutter equivalentSpecializer()(Code)



getMethod
public Method getMethod()(Code)
Get advice method, i.e. METHOD_ARGS(...). The advice method is used by the full code weaver. advice method



insertionAction
public void insertionAction(boolean beforeInsertion)(Code)



isPotentialCrosscutClass
protected boolean isPotentialCrosscutClass(Class crtCls) throws MissingInformationException(Code)
Return true only if
  1. This crosscut redefines the methodAdvice method, OR
  2. if this crosscut defines an advice, and the corresponding UserDefinedMCSignature matches the target class crtCls.



joinPointAction
public void joinPointAction(MethodEntryJoinPoint ev) throws IllegalAccessException, InvocationTargetException(Code)
Create an action to execute the advice which matched the method in which the location of jpe resides.
exception:
  InvocationTargetException - some error occured insidethe advice method.
exception:
  IllegalAccessException - the advice method was not public



joinPointAction
public void joinPointAction(MethodExitJoinPoint ev) throws IllegalAccessException, InvocationTargetException(Code)
Create an action to execute the advice which matched the method in which the location of jpe resides.
exception:
  InvocationTargetException - some error occured insidethe advice method.
exception:
  IllegalAccessException - the advice method was not public



potentialCrosscutClasses
protected Class[] potentialCrosscutClasses() throws MissingInformationException(Code)
Return all potential classes to which this crosscut applies: To all loaded classes, apply the isPotentialCrosscutClass selector.



toString
public String toString()(Code)



Fields inherited from ch.ethz.prose.crosscut.AbstractCrosscut
protected transient JoinPointManager requestFactory(Code)(Java Doc)

Methods inherited from ch.ethz.prose.crosscut.AbstractCrosscut
protected PointCutter NOT(PointCutter cs)(Code)(Java Doc)
public void associateToGroup(CrosscutGroup grp) throws IllegalArgumentException(Code)(Java Doc)
final public CrosscutRequest createRequest(Class c)(Code)(Java Doc)
final public CrosscutRequest createRequest()(Code)(Java Doc)
abstract protected CrosscutRequest doCreateRequest(Class c)(Code)(Java Doc)
public Aspect getOwner()(Code)(Java Doc)
public int getPriority()(Code)(Java Doc)
public PointFilter getSpecializer()(Code)(Java Doc)
public void insertionAction(boolean beforeInsertion)(Code)(Java Doc)
protected boolean isPotentialCrosscutClass(Class c)(Code)(Java Doc)
protected void joinPointAction(FieldModificationJoinPoint e) throws InvocationTargetException, IllegalAccessException(Code)(Java Doc)
protected void joinPointAction(FieldAccessJoinPoint e) throws InvocationTargetException, IllegalAccessException(Code)(Java Doc)
protected void joinPointAction(MethodEntryJoinPoint e) throws InvocationTargetException, IllegalAccessException(Code)(Java Doc)
protected void joinPointAction(ConstructorJoinPoint e) throws InvocationTargetException, IllegalAccessException(Code)(Java Doc)
protected void joinPointAction(MethodExitJoinPoint e) throws InvocationTargetException, IllegalAccessException(Code)(Java Doc)
protected void joinPointAction(ExceptionJoinPoint e) throws InvocationTargetException, IllegalAccessException(Code)(Java Doc)
protected void joinPointAction(ExceptionCatchJoinPoint e) throws InvocationTargetException, IllegalAccessException(Code)(Java Doc)
public void joinPointReached(MethodEntryJoinPoint jp) throws Exception(Code)(Java Doc)
public void joinPointReached(ConstructorJoinPoint jp) throws Exception(Code)(Java Doc)
public void joinPointReached(MethodExitJoinPoint jp) throws Exception(Code)(Java Doc)
public void joinPointReached(FieldAccessJoinPoint jp) throws Exception(Code)(Java Doc)
public void joinPointReached(FieldModificationJoinPoint jp) throws Exception(Code)(Java Doc)
public void joinPointReached(ExceptionJoinPoint jp) throws Exception(Code)(Java Doc)
public void joinPointReached(ExceptionCatchJoinPoint jp) throws Exception(Code)(Java Doc)
abstract protected PointCutter pointCutter()(Code)(Java Doc)
protected synchronized Class[] potentialCrosscutClasses()(Code)(Java Doc)
public void setOwner(Aspect ext) throws IllegalStateException(Code)(Java Doc)
protected JoinPoint thisJoinPoint() throws IllegalStateException(Code)(Java Doc)
public String toString()(Code)(Java Doc)
public void withdrawalAction(boolean beforeInsertion)(Code)(Java Doc)

Methods inherited from ch.ethz.prose.crosscut.Crosscut
abstract public void associateToGroup(CrosscutGroup grp)(Code)(Java Doc)
abstract public CrosscutRequest createRequest()(Code)(Java Doc)
abstract public CrosscutRequest createRequest(Class crtCls)(Code)(Java Doc)
abstract public Aspect getOwner()(Code)(Java Doc)
abstract public void setOwner(Aspect x)(Code)(Java Doc)

www.java2java.com | Contact Us
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.