blob: 1f00466a20c0c1932945c276d9888664b404564a [file] [log] [blame]
<!DOCTYPE HTML>
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (14.0.1) on Tue Jun 15 21:55:05 PDT 2021 -->
<title>ExportRegistration (Eclipse Communication Framework (ECF) 3.14.22 API)</title>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<meta name="dc.created" content="2021-06-15">
<meta name="description" content="declaration: package: org.osgi.service.remoteserviceadmin, interface: ExportRegistration">
<meta name="generator" content="javadoc/ClassWriterImpl">
<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../script-dir/jquery-ui.css" title="Style">
<script type="text/javascript" src="../../../../script.js"></script>
<script type="text/javascript" src="../../../../script-dir/jszip/dist/jszip.min.js"></script>
<script type="text/javascript" src="../../../../script-dir/jszip-utils/dist/jszip-utils.min.js"></script>
<!--[if IE]>
<script type="text/javascript" src="../../../../script-dir/jszip-utils/dist/jszip-utils-ie.min.js"></script>
<![endif]-->
<script type="text/javascript" src="../../../../script-dir/jquery-3.4.1.js"></script>
<script type="text/javascript" src="../../../../script-dir/jquery-ui.js"></script>
</head>
<body class="class-declaration">
<script type="text/javascript">var data = {"i0":6,"i1":6,"i2":6,"i3":6};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],4:["t3","Abstract Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
var pathtoroot = "../../../../";
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<div class="flexBox">
<header role="banner" class="flexHeader">
<nav role="navigation">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a id="navbar.top">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a id="navbar.top.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/ExportRegistration.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../index-files/index-1.html">Index</a></li>
<li><a href="../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<div class="navListSearch"><label for="search">SEARCH:</label>
<input type="text" id="search" value="search" disabled="disabled">
<input type="reset" id="reset" value="reset" disabled="disabled">
</div>
</div>
<!-- ========= END OF TOP NAVBAR ========= -->
<div class="skipNav"><a id="skip.navbar.top">
<!-- -->
</a></div>
</nav>
</header>
<div class="flexContent">
<main role="main">
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle"><span class="packageLabelInType">Package</span>&nbsp;<a href="package-summary.html">org.osgi.service.remoteserviceadmin</a></div>
<h1 title="Interface ExportRegistration" class="title">Interface ExportRegistration</h1>
</div>
<div class="contentContainer">
<section class="description">
<dl>
<dt>All Known Implementing Classes:</dt>
<dd><code><a href="../../../eclipse/ecf/osgi/services/remoteserviceadmin/RemoteServiceAdmin.ExportRegistration.html" title="class in org.eclipse.ecf.osgi.services.remoteserviceadmin">RemoteServiceAdmin.ExportRegistration</a></code></dd>
</dl>
<hr>
<pre>@ProviderType
public interface <span class="typeNameLabel">ExportRegistration</span></pre>
<div class="block">An Export Registration associates a service to a local endpoint.
The Export Registration can be used to delete the endpoint associated with an
this registration. It is created with the
<a href="RemoteServiceAdmin.html#exportService(org.osgi.framework.ServiceReference,java.util.Map)"><code>RemoteServiceAdmin.exportService(ServiceReference,Map)</code></a> method.
When this Export Registration has been closed, all methods must return
<code>null</code>.</div>
</section>
<section class="summary">
<ul class="blockList">
<!-- ========== METHOD SUMMARY =========== -->
<li class="blockList">
<section class="methodSummary"><a id="method.summary">
<!-- -->
</a>
<h2>Method Summary</h2>
<div class="memberSummary">
<div role="tablist" aria-orientation="horizontal"><button role="tab" aria-selected="true" aria-controls="memberSummary_tabpanel" tabindex="0" onkeydown="switchTab(event)" id="t0" class="activeTableTab">All Methods</button><button role="tab" aria-selected="false" aria-controls="memberSummary_tabpanel" tabindex="-1" onkeydown="switchTab(event)" id="t2" class="tableTab" onclick="show(2);">Instance Methods</button><button role="tab" aria-selected="false" aria-controls="memberSummary_tabpanel" tabindex="-1" onkeydown="switchTab(event)" id="t3" class="tableTab" onclick="show(4);">Abstract Methods</button></div>
<div id="memberSummary_tabpanel" role="tabpanel">
<table aria-labelledby="t0">
<thead>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Method</th>
<th class="colLast" scope="col">Description</th>
</tr>
</thead>
<tbody>
<tr class="altColor" id="i0">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#close()">close</a></span>()</code></th>
<td class="colLast">
<div class="block">Delete the local endpoint and disconnect any remote distribution
providers.</div>
</td>
</tr>
<tr class="rowColor" id="i1">
<td class="colFirst"><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang" class="externalLink">Throwable</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getException()">getException</a></span>()</code></th>
<td class="colLast">
<div class="block">Return the exception for any error during the export process.</div>
</td>
</tr>
<tr class="altColor" id="i2">
<td class="colFirst"><code><a href="ExportReference.html" title="interface in org.osgi.service.remoteserviceadmin">ExportReference</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getExportReference()">getExportReference</a></span>()</code></th>
<td class="colLast">
<div class="block">Return the Export Reference for the exported service.</div>
</td>
</tr>
<tr class="rowColor" id="i3">
<td class="colFirst"><code><a href="EndpointDescription.html" title="class in org.osgi.service.remoteserviceadmin">EndpointDescription</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#update(java.util.Map)">update</a></span>&#8203;(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/Map.html?is-external=true" title="class or interface in java.util" class="externalLink">Map</a>&lt;<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>,&#8203;?&gt;&nbsp;properties)</code></th>
<td class="colLast">
<div class="block">Update the endpoint represented by this <a href="ExportRegistration.html" title="interface in org.osgi.service.remoteserviceadmin"><code>ExportRegistration</code></a> and
return an updated <a href="EndpointDescription.html" title="class in org.osgi.service.remoteserviceadmin"><code>EndpointDescription</code></a>.</div>
</td>
</tr>
</tbody>
</table>
</div>
</div>
</section>
</li>
</ul>
</section>
<section class="details">
<ul class="blockList">
<!-- ============ METHOD DETAIL ========== -->
<li class="blockList">
<section class="methodDetails"><a id="method.detail">
<!-- -->
</a>
<h2>Method Details</h2>
<ul class="blockList">
<li class="blockList">
<section class="detail">
<h3><a id="getExportReference()">getExportReference</a></h3>
<div class="memberSignature"><span class="returnType"><a href="ExportReference.html" title="interface in org.osgi.service.remoteserviceadmin">ExportReference</a></span>&nbsp;<span class="memberName">getExportReference</span>()</div>
<div class="block">Return the Export Reference for the exported service.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>The Export Reference for this registration, or <code>null</code>
if this Import Registration is closed.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang" class="externalLink">IllegalStateException</a></code> - When this registration was not properly
initialized. See <a href="#getException()"><code>getException()</code></a>.</dd>
</dl>
</section>
</li>
<li class="blockList">
<section class="detail">
<h3><a id="update(java.util.Map)">update</a></h3>
<div class="memberSignature"><span class="returnType"><a href="EndpointDescription.html" title="class in org.osgi.service.remoteserviceadmin">EndpointDescription</a></span>&nbsp;<span class="memberName">update</span>&#8203;(<span class="arguments"><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/Map.html?is-external=true" title="class or interface in java.util" class="externalLink">Map</a>&lt;<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>,&#8203;?&gt;&nbsp;properties)</span></div>
<div class="block">Update the endpoint represented by this <a href="ExportRegistration.html" title="interface in org.osgi.service.remoteserviceadmin"><code>ExportRegistration</code></a> and
return an updated <a href="EndpointDescription.html" title="class in org.osgi.service.remoteserviceadmin"><code>EndpointDescription</code></a>. If this method returns an
updated <a href="EndpointDescription.html" title="class in org.osgi.service.remoteserviceadmin"><code>EndpointDescription</code></a>, then the object returned via
<a href="#getExportReference()"><code>getExportReference()</code></a> must also have been updated to return this
new object. If this method does not return an updated
<a href="EndpointDescription.html" title="class in org.osgi.service.remoteserviceadmin"><code>EndpointDescription</code></a> then the object returned via
<a href="#getExportReference()"><code>getExportReference()</code></a> should remain unchanged.
When creating the updated <a href="EndpointDescription.html" title="class in org.osgi.service.remoteserviceadmin"><code>EndpointDescription</code></a> the
<a href="https://docs.osgi.org/javadoc/osgi.core/7.0.0/org/osgi/framework/ServiceReference.html?is-external=true" title="class or interface in org.osgi.framework" class="externalLink"><code>ServiceReference</code></a> originally passed to
<a href="RemoteServiceAdmin.html#exportService(org.osgi.framework.ServiceReference,java.util.Map)"><code>RemoteServiceAdmin.exportService(ServiceReference, Map)</code></a> must be
queried to pick up any changes to its service properties.
If this argument is null then the original properties passed when
creating this ExportRegistration should be used when constructing the
updated <a href="EndpointDescription.html" title="class in org.osgi.service.remoteserviceadmin"><code>EndpointDescription</code></a>. Otherwise the new properties should
be used, and replace the original properties for subsequent calls to the
update method.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>properties</code> - properties to be merged with the current service
properties for the <a href="https://docs.osgi.org/javadoc/osgi.core/7.0.0/org/osgi/framework/ServiceReference.html?is-external=true" title="class or interface in org.osgi.framework" class="externalLink"><code>ServiceReference</code></a> represented by this
<a href="ExportRegistration.html" title="interface in org.osgi.service.remoteserviceadmin"><code>ExportRegistration</code></a>. If null is passed then the original
properties passed to
<a href="RemoteServiceAdmin.html#exportService(org.osgi.framework.ServiceReference,java.util.Map)"><code>RemoteServiceAdmin.exportService(ServiceReference, Map)</code></a>
will be used.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>The updated <a href="EndpointDescription.html" title="class in org.osgi.service.remoteserviceadmin"><code>EndpointDescription</code></a> for this registration or
null if there was a failure updating the endpoint. If a failure
occurs then it can be accessed using <a href="#getException()"><code>getException()</code></a>.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang" class="externalLink">IllegalStateException</a></code> - If this registration is closed, or when
this registration was not properly initialized. See
<a href="#getException()"><code>getException()</code></a>.</dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>1.1</dd>
</dl>
</section>
</li>
<li class="blockList">
<section class="detail">
<h3><a id="close()">close</a></h3>
<div class="memberSignature"><span class="returnType">void</span>&nbsp;<span class="memberName">close</span>()</div>
<div class="block">Delete the local endpoint and disconnect any remote distribution
providers. After this method returns, all methods must return
<code>null</code>.
This method has no effect when this registration has already been closed
or is being closed.</div>
</section>
</li>
<li class="blockList">
<section class="detail">
<h3><a id="getException()">getException</a></h3>
<div class="memberSignature"><span class="returnType"><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang" class="externalLink">Throwable</a></span>&nbsp;<span class="memberName">getException</span>()</div>
<div class="block">Return the exception for any error during the export process.
If the Remote Service Admin for some reasons is unable to properly
initialize this registration, then it must return an exception from this
method. If no error occurred, this method must return <code>null</code>.
The error must be set before this Export Registration is returned.
Asynchronously occurring errors must be reported to the log.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>The exception that occurred during the initialization of this
registration or <code>null</code> if no exception occurred.</dd>
</dl>
</section>
</li>
</ul>
</section>
</li>
</ul>
</section>
</div>
<!-- ========= END OF CLASS DATA ========= -->
</main>
<footer role="contentinfo">
<nav role="navigation">
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a id="navbar.bottom">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a id="navbar.bottom.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/ExportRegistration.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../index-files/index-1.html">Index</a></li>
<li><a href="../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
</div>
<a id="skip.navbar.bottom">
<!-- -->
</a>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
</nav>
<p class="legalCopy"><small>Copyright &#169; 2004&#x2013;2020 <a href="https://www.eclipse.org/">Eclipse Foundation</a>. All rights reserved.</small></p>
</footer>
</div>
</div>
</body>
</html>