blob: 50669ed772fed579771082b42a5aec4648f58d53 [file] [log] [blame]
Stephan Herrmann01664412010-04-01 20:28:43 +00001<!DOCTYPE html
2 PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "../xhtml1-strict.dtd">
3<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
4 <head>
5 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
Stephan Herrmann01664412010-04-01 20:28:43 +00006 <link rel="stylesheet" type="text/css" href="../css/ot.css" />
7 <link rel="stylesheet" type="text/css" href="../css/otjld.css" />
8 <title>OT/J Language Definition v1.3</title>
9 </head>
10 <body class="otdt">
11 <div id="content">
12 <table class="nav">
13 <tr>
14 <td class="back"><a id="top"></a><a href="s7.html" rel="prev">&lt;&lt;&nbsp;&sect;7&nbsp;Role Encapsulation</a></td>
15 <td class="top"><a href="index.html" rel="contents">&uarr;&nbsp;Table of Contents&nbsp;&uarr;</a></td>
16 <td class="next"><a href="s9.html" rel="next">&sect;9&nbsp;Value Dependent Classes&nbsp;&gt;&gt;</a></td>
17 </tr>
18 </table>
19 <div class="chapter" id="s8">
20 <div class="headl">
21 <div class="headr">
22 <h1>&sect;8&nbsp;Join Point Queries</h1>
23 </div>
24 </div>
25 <div id="toc-box">
26 <ul class="toc-box">
27 <li><a href="s8.html">&sect;8&nbsp;Join Point Queries</a></li>
28 <li><a href="#s8.1">&sect;8.1&nbsp;Join point queries</a></li>
29 <li><a href="#s8.2">&sect;8.2&nbsp;Query expressions</a></li>
30 <li><a href="#s8.3">&sect;8.3&nbsp;OT/J meta model</a></li>
31 </ul>
32 </div>
33 <div class="intro">
34 <h3>Defining sets of join points for interception</h3>
35 <div class="line"></div>
36 <div class="term">join point</div>
37 <div class="termdesc">In OT/J a join point is considered to be an element
38 of the program. A meta model exists which defines the <strong>kinds</strong>
39 of join points that can be identified.
40 </div>
41 <div class="line"></div>
42 <div class="term">join point interception</div>
43 <div class="termdesc">The purpose of identifying join points is to intercept program execution at these points
44 by means of <em>callin</em> bindings.
45 </div>
46 <div class="line"></div>
47 <div class="term">join point query</div>
48 <div class="termdesc">Sets of join points are defined using functional queries of the program's reflective representation.</div>
49 <div class="line"></div>
50 <div class="term"><i>pointcuts</i></div>
51 <div class="termdesc">Dynamic "pointcuts" comparable to AspectJ's <code>cflow</code> or even the Trace-Matches approach
52 are not subject to the join point language of OT/J. These features will be added at a different level
53 of abstraction. Note, that guard predicates (<a href="s5.html#s5.4" title="&sect;5.4&nbsp;Guard predicates" class="sect">&sect;5.4</a>) subsume the dynamic
54 capabilities of the pointcuts <code>if, target, this, args</code>.
55 </div>
56 <div class="line"></div>
57 </div>
58 <div class="sect depth2" id="s8.1">
Stephan Herrmann109893e2010-05-18 22:02:53 +000059 <h2 class="sect">&sect;8.1&nbsp;Join point queries<a class="img" href="s8.html#s8.1"
60 title="PermaLink to &sect;8.1&nbsp;Join point queries"><img style="vertical-align:text-top;margin-left:5px;" src="../images/permalink.png"
61 alt="" /></a><span class="toplink"><a href="#top">&uarr;&nbsp;&sect;8</a></span></h2>
Stephan Herrmann01664412010-04-01 20:28:43 +000062 <p><strong><em>This section will describe the query language used to define sets
63 of join points. As of version 1.4.0 of the OTDT this query language is not yet supported.</em></strong></p>
64 </div>
65 <div class="sect depth2" id="s8.2">
Stephan Herrmann109893e2010-05-18 22:02:53 +000066 <h2 class="sect">&sect;8.2&nbsp;Query expressions<a class="img" href="s8.html#s8.2"
67 title="PermaLink to &sect;8.2&nbsp;Query expressions"><img style="vertical-align:text-top;margin-left:5px;" src="../images/permalink.png"
68 alt="" /></a><span class="toplink"><a href="#top">&uarr;&nbsp;&sect;8</a></span></h2>
Stephan Herrmann01664412010-04-01 20:28:43 +000069 </div>
70 <div class="sect depth2" id="s8.3">
Stephan Herrmann109893e2010-05-18 22:02:53 +000071 <h2 class="sect">&sect;8.3&nbsp;OT/J meta model<a class="img" href="s8.html#s8.3"
72 title="PermaLink to &sect;8.3&nbsp;OT/J meta model"><img style="vertical-align:text-top;margin-left:5px;" src="../images/permalink.png"
73 alt="" /></a><span class="toplink"><a href="#top">&uarr;&nbsp;&sect;8</a></span></h2>
Stephan Herrmann01664412010-04-01 20:28:43 +000074 </div>
75 </div>
76 <table class="nav">
77 <tr>
78 <td class="back"><a href="s7.html" rel="prev">&lt;&lt;&nbsp;&sect;7&nbsp;Role Encapsulation</a></td>
79 <td class="top"><a href="index.html" rel="contents">&uarr;&nbsp;Table of Contents&nbsp;&uarr;</a></td>
80 <td class="next"><a href="s9.html" rel="next">&sect;9&nbsp;Value Dependent Classes&nbsp;&gt;&gt;</a></td>
81 </tr>
82 </table>
83 </div>
84 <div id="footer">
Stephan Herrmann109893e2010-05-18 22:02:53 +000085 <hr /><a class="w3c img" href="http://jigsaw.w3.org/css-validator/check/referer"
86 shape="rect"><img src="../images/valid-css2-blue.png" alt="Valid CSS!" height="31" width="88" /></a><a class="w3c img" href="http://validator.w3.org/check?uri=referer" shape="rect"><img src="../images/valid-xhtml10-blue.png" alt="Valid XHTML 1.0 Strict" height="31"
87 width="88" /></a><address>&copy; Stephan Herrmann, Christine Hundt, Marco Mosconi</address>
Stephan Herrmann8f0fa312010-06-08 18:24:55 +000088 OT/J version 1.3 &mdash; last modified: 2010-06-08
Stephan Herrmann01664412010-04-01 20:28:43 +000089 </div>
90 </body>
91</html>