| <!doctype html public "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> |
| <html> |
| |
| <head> |
| <title>Listening To Targlet Container Events (Oomph Targlets Documentation)</title> |
| |
| <link rel="stylesheet" href="../book.css"> |
| |
| <noscript></noscript> |
| <script type="text/javascript"> |
| function windowTitle() |
| { |
| if (location.href.indexOf('is-external=true') == -1) { |
| parent.document.title="Listening To Targlet Container Events (Oomph Targlets Documentation)"; |
| } |
| } |
| </script> |
| |
| <link rel="stylesheet" href="../editor.css"> |
| |
| <script src="http://code.jquery.com/jquery-1.11.1.min.js"></script> |
| |
| <script src="http://code.jquery.com/ui/1.11.0/jquery-ui.min.js"></script> |
| |
| <link rel="stylesheet" href="http://code.jquery.com/ui/1.11.1/themes/smoothness/jquery-ui.css"> |
| |
| <script> |
| $(function() { |
| $( ".resizable" ).resizable({ handles:"s,e,se", autoHide:true }); |
| }); |
| </script> |
| |
| <script type="text/javascript"> |
| function maximize(id) |
| { |
| e = document.getElementById('max_' + id); |
| c1 = document.getElementById('editor_content_1_' + id); |
| c2 = document.getElementById('editor_content_2_' + id); |
| pv = document.getElementById('max_pv_' + id); |
| if (e.className == 'max') |
| { |
| e.className = 'rst'; |
| e.setAttribute('title', 'Restore'); |
| c1.setAttribute('style_orig', c1.getAttribute('style')); |
| c1.setAttribute('style', 'border:2px solid #99b4d1; border-top:none;'); |
| c2.setAttribute('style', ''); |
| if (pv != null) |
| { |
| pv.setAttribute('width_orig', pv.getAttribute('width')); |
| pv.setAttribute('width', ''); |
| } |
| } |
| else |
| { |
| e.className = 'max'; |
| e.setAttribute('title', 'Maximize'); |
| c1.setAttribute('style', c1.getAttribute('style_orig')); |
| c1.setAttribute('style_orig', ''); |
| c2.setAttribute('style', 'overflow:scroll; width:100%; height:100%;'); |
| if (pv != null) |
| { |
| pv.setAttribute('width', pv.getAttribute('width_orig')); |
| pv.setAttribute('width_orig', ''); |
| } |
| } |
| } |
| </script> |
| </head> |
| |
| <body bgcolor="white" onload="windowTitle();"> |
| <!-- <div class="help_breadcrumbs breadcrumbs_top"><a href="../Overview.html" title="Oomph Targlets Documentation">Oomph Targlets Documentation</a> > <a href="index.html" title="Category in Oomph Targlets Documentation">Programmer's Guide</a></div> --> |
| |
| <table border="0"> |
| <tr> |
| <td width="100%"><h1>Listening To Targlet Container Events</h1></td> |
| <td align="right" valign="middle" nowrap><a href="UnderstandingTargletContainers.html" title="Backward to Understanding Targlet Containers"><img src="../../images/backward.png" border="0"></a> <a href="../reference/index.html" title="Forward to Reference"><img src="../../images/forward.png" border="0"></a></td> |
| </tr> |
| </table> |
| <p class="author">Author: Eike Stepper</p> |
| <p> |
| When the state of a <a href="../../javadoc/org/eclipse/oomph/targlets/core/ITargletContainer.html" title="Interface in org.eclipse.oomph.targlets.core"><code>targlet container</code></a> changes registered <a href="../../javadoc/org/eclipse/oomph/targlets/core/ITargletContainerListener.html" title="Interface in org.eclipse.oomph.targlets.core"><code>listeners</code></a> are sent one of the following <a href="../../javadoc/org/eclipse/oomph/targlets/core/TargletContainerEvent.html" title="Class in org.eclipse.oomph.targlets.core"><code>events</code></a>: |
| <p> |
| <ul> |
| <li> <a href="../../javadoc/org/eclipse/oomph/targlets/core/TargletContainerEvent.IDChangedEvent.html" title="Class in org.eclipse.oomph.targlets.core.TargletContainerEvent"><code>IDChangedEvent</code></a> |
| <li> <a href="../../javadoc/org/eclipse/oomph/targlets/core/TargletContainerEvent.TargletsChangedEvent.html" title="Class in org.eclipse.oomph.targlets.core.TargletContainerEvent"><code>TargletsChangedEvent</code></a> |
| <li> <a href="../../javadoc/org/eclipse/oomph/targlets/core/TargletContainerEvent.ProfileUpdateSucceededEvent.html" title="Class in org.eclipse.oomph.targlets.core.TargletContainerEvent"><code>ProfileUpdateSucceededEvent</code></a> |
| <li> <a href="../../javadoc/org/eclipse/oomph/targlets/core/TargletContainerEvent.ProfileUpdateFailedEvent.html" title="Class in org.eclipse.oomph.targlets.core.TargletContainerEvent"><code>ProfileUpdateFailedEvent</code></a> |
| <li> <a href="../../javadoc/org/eclipse/oomph/targlets/core/TargletContainerEvent.WorkspaceUpdateFinishedEvent.html" title="Class in org.eclipse.oomph.targlets.core.TargletContainerEvent"><code>WorkspaceUpdateFinishedEvent</code></a> |
| </ul> |
| <p> |
| Listeners can be registered programmatically or declaratively: |
| <p> |
| <ul> |
| <li> The <a href="../../javadoc/org/eclipse/oomph/targlets/core/ITargletContainerListener.Registry.html" title="Interface in org.eclipse.oomph.targlets.core.ITargletContainerListener"><code>listener registry</code></a> provides methods to add or remove listeners. |
| <li> The <a href="../../schemadoc/org_eclipse_oomph_targlets_core_targletContainerListeners.html"><code>org.eclipse.oomph.targlets.core.targletContainerListeners</code></a> extension point accepts declarative listener contributions. |
| </ul> |
| <p> |
| The following example shows a listener that prints information about all received events to the console: |
| <p> |
| |
| |
| <div class="snippet" style="margin-left:24px;" align="left"> |
| <a name="snippet_ListeningToEvents_1"></a> |
| <table border="0" cellspacing="0" cellpadding="0"> |
| <tr> |
| <td width="25px"><div style="position:relative;"><img src="../../images/editor-1.png"><img style="position:absolute; top:5px; left:5px;" src="../../images/formatter-java.gif"></div></td> |
| <td style="background-image:url(../../images/editor-2.png); background-repeat:repeat-x;" width="1px"><font face="Segoe UI,Arial" size="-1">TargletContainerEventLogger.java</font></td> |
| <td width="1px"><img src="../../images/editor-3.png"></td> |
| <td style="background-image:url(../../images/editor-4.png); background-repeat:repeat-x;" align="right"></td> |
| <td style="background-image:url(../../images/editor-4.png); background-repeat:repeat-x;" align="center" width="16"><a href="javascript:maximize('ListeningToEvents_1')" id="max_ListeningToEvents_1" class="max" title="Maximize"> </a></td> |
| <td width="6px"><img src="../../images/editor-5.png"></td> |
| </tr> |
| <tr> |
| <td colspan="6" align="left" valign="top" style="border:1px solid #a0a0a0; border-top:none;" nowrap> |
| <div id="editor_content_1_ListeningToEvents_1" class="ui-widget-content resizable" style="width:600px; height:300px; border:2px solid #99b4d1; border-top:none;"> |
| <div id="editor_content_2_ListeningToEvents_1" style="overflow:scroll; width:100%; height:100%;"> |
| <code> |
| <font color="#7f0055"><b>class </b></font>TargletContainerEventLogger <font color="#7f0055"><b>implements </b></font>ITargletContainerListener<br/> |
| {<br/> |
| <font color="#7f0055"><b>public </b></font>TargletContainerEventLogger()<br/> |
| {<br/> |
| }<br/> |
| <br/> |
| <font color="#7f0055"><b>public </b></font><font color="#7f0055"><b>void </b></font>handleTargletContainerEvent(TargletContainerEvent event, IProgressMonitor monitor) <font color="#7f0055"><b>throws </b></font>Exception<br/> |
| {<br/> |
| ITargletContainer container = event.getSource();<br/> |
| <br/> |
| <font color="#7f0055"><b>if </b></font>(event <font color="#7f0055"><b>instanceof </b></font>IDChangedEvent)<br/> |
| {<br/> |
| System.out.println(<font color="#2a00ff">"IDChangedEvent: " </font>+ container);<br/> |
| System.out.println(<font color="#2a00ff">" oldID: " </font>+ ((IDChangedEvent)event).getOldID());<br/> |
| }<br/> |
| <font color="#7f0055"><b>else if </b></font>(event <font color="#7f0055"><b>instanceof </b></font>TargletsChangedEvent)<br/> |
| {<br/> |
| System.out.println(<font color="#2a00ff">"TargletsChangedEvent: " </font>+ container);<br/> |
| }<br/> |
| <font color="#7f0055"><b>else if </b></font>(event <font color="#7f0055"><b>instanceof </b></font>ProfileUpdateSucceededEvent)<br/> |
| {<br/> |
| System.out.println(<font color="#2a00ff">"ProfileUpdateSucceededEvent: " </font>+ container);<br/> |
| System.out.println(<font color="#2a00ff">" metadataRepositories: " </font>+ ((ProfileUpdateSucceededEvent)event).getMetadataRepositories());<br/> |
| System.out.println(<font color="#2a00ff">" workspaceIUInfos: " </font>+ ((ProfileUpdateSucceededEvent)event).getWorkspaceIUInfos());<br/> |
| System.out.println(<font color="#2a00ff">" provisioningPlan: " </font>+ ((ProfileUpdateSucceededEvent)event).getProvisioningPlan());<br/> |
| System.out.println(<font color="#2a00ff">" profile: " </font>+ ((ProfileUpdateSucceededEvent)event).getProfile());<br/> |
| }<br/> |
| <font color="#7f0055"><b>else if </b></font>(event <font color="#7f0055"><b>instanceof </b></font>ProfileUpdateFailedEvent)<br/> |
| {<br/> |
| System.out.println(<font color="#2a00ff">"ProfileUpdateFailedEvent: " </font>+ container);<br/> |
| System.out.println(<font color="#2a00ff">" updateProblem: " </font>+ ((ProfileUpdateFailedEvent)event).getUpdateProblem());<br/> |
| }<br/> |
| <font color="#7f0055"><b>else if </b></font>(event <font color="#7f0055"><b>instanceof </b></font>WorkspaceUpdateFinishedEvent)<br/> |
| {<br/> |
| System.out.println(<font color="#2a00ff">"WorkspaceUpdateFinishedEvent: " </font>+ container);<br/> |
| System.out.println(<font color="#2a00ff">" importResults: " </font>+ ((WorkspaceUpdateFinishedEvent)event).getImportResults());<br/> |
| }<br/> |
| <font color="#7f0055"><b>else</b></font><br/> |
| {<br/> |
| System.out.println(event);<br/> |
| }<br/> |
| }<br/> |
| } </code> |
| |
| </div> |
| </div> |
| </td> |
| </tr> |
| </table> |
| </div> |
| <p> |
| . |
| <p><p><b>See Also:</b></p> |
| <ul> |
| <li><a href="UnderstandingTargletContainers.html" title="Article in Oomph Targlets Documentation">Understanding Targlet Containers</a></li> |
| </ul> |
| |
| |
| <p align="right"> |
| <a href="UnderstandingTargletContainers.html" title="Backward to Understanding Targlet Containers"><img src="../../images/backward.png" border="0"></a> <a href="../reference/index.html" title="Forward to Reference"><img src="../../images/forward.png" border="0"></a></p> |
| <!-- <div class="help_breadcrumbs breadcrumbs_bottom"><a href="../Overview.html" title="Oomph Targlets Documentation">Oomph Targlets Documentation</a> > <a href="index.html" title="Category in Oomph Targlets Documentation">Programmer's Guide</a></div> --> |
| |
| <div class="copyright">Copyright (c) 2014 Eike Stepper (Loehne, Germany) and others.<br>All rights reserved. This program and the accompanying materials are made available under the terms of the Eclipse Public License v2.0 which accompanies this distribution, and is available at http://www.eclipse.org/legal/epl-v20.html</div> |
| </body> |
| </html> |