<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<!-- Generated by javadoc (build 1.5.0_16) on Thu Oct 28 11:41:04 PDT 2010 -->
<TITLE>
S-Index
</TITLE>


<LINK REL ="stylesheet" TYPE="text/css" HREF="../stylesheet.css" TITLE="Style">

<SCRIPT type="text/javascript">
function windowTitle()
{
    parent.document.title="S-Index";
}
</SCRIPT>
<NOSCRIPT>
</NOSCRIPT>

</HEAD>

<BODY BGCOLOR="white" onload="windowTitle();">


<!-- ========= START OF TOP NAVBAR ======= -->
<A NAME="navbar_top"><!-- --></A>
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_top_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
  <TR ALIGN="center" VALIGN="top">
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <FONT CLASS="NavBarFont1">Package</FONT>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <FONT CLASS="NavBarFont1">Use</FONT>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Index</B></FONT>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
  </TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>

<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="index-18.html"><B>PREV LETTER</B></A>&nbsp;
&nbsp;<A HREF="index-20.html"><B>NEXT LETTER</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
  <A HREF="../index.html?index-filesindex-19.html" target="_top"><B>FRAMES</B></A>  &nbsp;
&nbsp;<A HREF="index-19.html" target="_top"><B>NO FRAMES</B></A>  &nbsp;
&nbsp;<SCRIPT type="text/javascript">
  <!--
  if(window==top) {
    document.writeln('<A HREF="../allclasses-noframe.html"><B>All Classes</B></A>');
  }
  //-->
</SCRIPT>
<NOSCRIPT>
  <A HREF="../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>


</FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_top"></A>
<!-- ========= END OF TOP NAVBAR ========= -->

<A HREF="index-1.html">A</A> <A HREF="index-2.html">B</A> <A HREF="index-3.html">C</A> <A HREF="index-4.html">D</A> <A HREF="index-5.html">E</A> <A HREF="index-6.html">F</A> <A HREF="index-7.html">G</A> <A HREF="index-8.html">H</A> <A HREF="index-9.html">I</A> <A HREF="index-10.html">J</A> <A HREF="index-11.html">K</A> <A HREF="index-12.html">L</A> <A HREF="index-13.html">M</A> <A HREF="index-14.html">N</A> <A HREF="index-15.html">O</A> <A HREF="index-16.html">P</A> <A HREF="index-17.html">Q</A> <A HREF="index-18.html">R</A> <A HREF="index-19.html">S</A> <A HREF="index-20.html">T</A> <A HREF="index-21.html">U</A> <A HREF="index-22.html">V</A> <A HREF="index-23.html">W</A> <A HREF="index-24.html">X</A> <A HREF="index-25.html">Z</A> <A HREF="index-26.html">_</A> <HR>
<A NAME="_S_"><!-- --></A><H2>
<B>S</B></H2>
<DL>
<DT><A HREF="../org/eclipse/ecf/core/jobs/JobsExecutor.html#safeRun(org.eclipse.equinox.concurrent.future.ISafeProgressRunner, org.eclipse.equinox.concurrent.future.IProgressRunnable)"><B>safeRun(ISafeProgressRunner, IProgressRunnable)</B></A> - 
Method in class org.eclipse.ecf.core.jobs.<A HREF="../org/eclipse/ecf/core/jobs/JobsExecutor.html" title="class in org.eclipse.ecf.core.jobs">JobsExecutor</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/discovery/ui/model/provider/DiscoveryEditingDomainProvider.html#save()"><B>save()</B></A> - 
Method in class org.eclipse.ecf.discovery.ui.model.provider.<A HREF="../org/eclipse/ecf/discovery/ui/model/provider/DiscoveryEditingDomainProvider.html" title="class in org.eclipse.ecf.discovery.ui.model.provider">DiscoveryEditingDomainProvider</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/ui/util/PasswordCacheHelper.html#savePassword(java.lang.String)"><B>savePassword(String)</B></A> - 
Method in class org.eclipse.ecf.ui.util.<A HREF="../org/eclipse/ecf/ui/util/PasswordCacheHelper.html" title="class in org.eclipse.ecf.ui.util">PasswordCacheHelper</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/ui/screencapture/ImageWrapper.html#scanlinePad"><B>scanlinePad</B></A> - 
Variable in class org.eclipse.ecf.ui.screencapture.<A HREF="../org/eclipse/ecf/ui/screencapture/ImageWrapper.html" title="class in org.eclipse.ecf.ui.screencapture">ImageWrapper</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/dnssd/DnsSdNamespace.html#SCHEME"><B>SCHEME</B></A> - 
Static variable in class org.eclipse.ecf.provider.dnssd.<A HREF="../org/eclipse/ecf/provider/dnssd/DnsSdNamespace.html" title="class in org.eclipse.ecf.provider.dnssd">DnsSdNamespace</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/local/identity/LocalNamespace.html#SCHEME"><B>SCHEME</B></A> - 
Static variable in class org.eclipse.ecf.provider.local.identity.<A HREF="../org/eclipse/ecf/provider/local/identity/LocalNamespace.html" title="class in org.eclipse.ecf.provider.local.identity">LocalNamespace</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/xmpp/identity/XMPPFileNamespace.html#SCHEME"><B>SCHEME</B></A> - 
Static variable in class org.eclipse.ecf.provider.xmpp.identity.<A HREF="../org/eclipse/ecf/provider/xmpp/identity/XMPPFileNamespace.html" title="class in org.eclipse.ecf.provider.xmpp.identity">XMPPFileNamespace</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/remoteservice/rest/identity/RestNamespace.html#SCHEME"><B>SCHEME</B></A> - 
Static variable in class org.eclipse.ecf.remoteservice.rest.identity.<A HREF="../org/eclipse/ecf/remoteservice/rest/identity/RestNamespace.html" title="class in org.eclipse.ecf.remoteservice.rest.identity">RestNamespace</A>
<DD>The scheme of this namespace.
<DT><A HREF="../org/eclipse/ecf/remoteservice/rpc/identity/RpcNamespace.html#SCHEME"><B>SCHEME</B></A> - 
Static variable in class org.eclipse.ecf.remoteservice.rpc.identity.<A HREF="../org/eclipse/ecf/remoteservice/rpc/identity/RpcNamespace.html" title="class in org.eclipse.ecf.remoteservice.rpc.identity">RpcNamespace</A>
<DD>The scheme of this namespace.
<DT><A HREF="../org/eclipse/ecf/core/identity/Namespace.html#SCHEME_SEPARATOR"><B>SCHEME_SEPARATOR</B></A> - 
Static variable in class org.eclipse.ecf.core.identity.<A HREF="../org/eclipse/ecf/core/identity/Namespace.html" title="class in org.eclipse.ecf.core.identity">Namespace</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/osgi/services/discovery/RemoteServicePublication.html#SCOPE"><B>SCOPE</B></A> - 
Static variable in interface org.eclipse.ecf.osgi.services.discovery.<A HREF="../org/eclipse/ecf/osgi/services/discovery/RemoteServicePublication.html" title="interface in org.eclipse.ecf.osgi.services.discovery">RemoteServicePublication</A>
<DD>Discovery scope property.
<DT><A HREF="../org/eclipse/ecf/discovery/identity/ServiceTypeID.html#scopes"><B>scopes</B></A> - 
Variable in class org.eclipse.ecf.discovery.identity.<A HREF="../org/eclipse/ecf/discovery/identity/ServiceTypeID.html" title="class in org.eclipse.ecf.discovery.identity">ServiceTypeID</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/presence/collab/ui/screencapture/ScreenCaptureShareRosterEntryContributionItem.html#SCREEN_CAPTURE_DELAY"><B>SCREEN_CAPTURE_DELAY</B></A> - 
Static variable in class org.eclipse.ecf.presence.collab.ui.screencapture.<A HREF="../org/eclipse/ecf/presence/collab/ui/screencapture/ScreenCaptureShareRosterEntryContributionItem.html" title="class in org.eclipse.ecf.presence.collab.ui.screencapture">ScreenCaptureShareRosterEntryContributionItem</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/ui/screencapture/ScreenCaptureConfirmationDialog.html" title="class in org.eclipse.ecf.ui.screencapture"><B>ScreenCaptureConfirmationDialog</B></A> - Class in <A HREF="../org/eclipse/ecf/ui/screencapture/package-summary.html">org.eclipse.ecf.ui.screencapture</A><DD>&nbsp;<DT><A HREF="../org/eclipse/ecf/ui/screencapture/ScreenCaptureConfirmationDialog.html#ScreenCaptureConfirmationDialog(org.eclipse.swt.widgets.Shell, org.eclipse.ecf.core.identity.ID, java.lang.String, org.eclipse.swt.graphics.Image, int, int, org.eclipse.ecf.ui.screencapture.IImageSender)"><B>ScreenCaptureConfirmationDialog(Shell, ID, String, Image, int, int, IImageSender)</B></A> - 
Constructor for class org.eclipse.ecf.ui.screencapture.<A HREF="../org/eclipse/ecf/ui/screencapture/ScreenCaptureConfirmationDialog.html" title="class in org.eclipse.ecf.ui.screencapture">ScreenCaptureConfirmationDialog</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/presence/collab/ui/screencapture/ScreenCaptureDataMessage.html" title="class in org.eclipse.ecf.presence.collab.ui.screencapture"><B>ScreenCaptureDataMessage</B></A> - Class in <A HREF="../org/eclipse/ecf/presence/collab/ui/screencapture/package-summary.html">org.eclipse.ecf.presence.collab.ui.screencapture</A><DD>&nbsp;<DT><A HREF="../org/eclipse/ecf/presence/collab/ui/screencapture/ScreenCaptureDataMessage.html#ScreenCaptureDataMessage(org.eclipse.ecf.core.identity.ID, byte[], java.lang.Boolean)"><B>ScreenCaptureDataMessage(ID, byte[], Boolean)</B></A> - 
Constructor for class org.eclipse.ecf.presence.collab.ui.screencapture.<A HREF="../org/eclipse/ecf/presence/collab/ui/screencapture/ScreenCaptureDataMessage.html" title="class in org.eclipse.ecf.presence.collab.ui.screencapture">ScreenCaptureDataMessage</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/ui/screencapture/ScreenCaptureJob.html" title="class in org.eclipse.ecf.ui.screencapture"><B>ScreenCaptureJob</B></A> - Class in <A HREF="../org/eclipse/ecf/ui/screencapture/package-summary.html">org.eclipse.ecf.ui.screencapture</A><DD>&nbsp;<DT><A HREF="../org/eclipse/ecf/ui/screencapture/ScreenCaptureJob.html#ScreenCaptureJob(org.eclipse.swt.widgets.Display, org.eclipse.ecf.core.identity.ID, java.lang.String, org.eclipse.ecf.ui.screencapture.IImageSender)"><B>ScreenCaptureJob(Display, ID, String, IImageSender)</B></A> - 
Constructor for class org.eclipse.ecf.ui.screencapture.<A HREF="../org/eclipse/ecf/ui/screencapture/ScreenCaptureJob.html" title="class in org.eclipse.ecf.ui.screencapture">ScreenCaptureJob</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/presence/collab/ui/screencapture/ScreenCaptureShare.html" title="class in org.eclipse.ecf.presence.collab.ui.screencapture"><B>ScreenCaptureShare</B></A> - Class in <A HREF="../org/eclipse/ecf/presence/collab/ui/screencapture/package-summary.html">org.eclipse.ecf.presence.collab.ui.screencapture</A><DD>Send/receive requests to share a specific view (identified by view ID).<DT><A HREF="../org/eclipse/ecf/presence/collab/ui/screencapture/ScreenCaptureShare.html#ScreenCaptureShare(org.eclipse.ecf.datashare.IChannelContainerAdapter)"><B>ScreenCaptureShare(IChannelContainerAdapter)</B></A> - 
Constructor for class org.eclipse.ecf.presence.collab.ui.screencapture.<A HREF="../org/eclipse/ecf/presence/collab/ui/screencapture/ScreenCaptureShare.html" title="class in org.eclipse.ecf.presence.collab.ui.screencapture">ScreenCaptureShare</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/presence/collab/ui/screencapture/ScreenCaptureShareRosterContributionItem.html" title="class in org.eclipse.ecf.presence.collab.ui.screencapture"><B>ScreenCaptureShareRosterContributionItem</B></A> - Class in <A HREF="../org/eclipse/ecf/presence/collab/ui/screencapture/package-summary.html">org.eclipse.ecf.presence.collab.ui.screencapture</A><DD>&nbsp;<DT><A HREF="../org/eclipse/ecf/presence/collab/ui/screencapture/ScreenCaptureShareRosterContributionItem.html#ScreenCaptureShareRosterContributionItem()"><B>ScreenCaptureShareRosterContributionItem()</B></A> - 
Constructor for class org.eclipse.ecf.presence.collab.ui.screencapture.<A HREF="../org/eclipse/ecf/presence/collab/ui/screencapture/ScreenCaptureShareRosterContributionItem.html" title="class in org.eclipse.ecf.presence.collab.ui.screencapture">ScreenCaptureShareRosterContributionItem</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/presence/collab/ui/screencapture/ScreenCaptureShareRosterContributionItem.html#ScreenCaptureShareRosterContributionItem(java.lang.String)"><B>ScreenCaptureShareRosterContributionItem(String)</B></A> - 
Constructor for class org.eclipse.ecf.presence.collab.ui.screencapture.<A HREF="../org/eclipse/ecf/presence/collab/ui/screencapture/ScreenCaptureShareRosterContributionItem.html" title="class in org.eclipse.ecf.presence.collab.ui.screencapture">ScreenCaptureShareRosterContributionItem</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/presence/collab/ui/screencapture/ScreenCaptureShareRosterEntryContributionItem.html" title="class in org.eclipse.ecf.presence.collab.ui.screencapture"><B>ScreenCaptureShareRosterEntryContributionItem</B></A> - Class in <A HREF="../org/eclipse/ecf/presence/collab/ui/screencapture/package-summary.html">org.eclipse.ecf.presence.collab.ui.screencapture</A><DD>&nbsp;<DT><A HREF="../org/eclipse/ecf/presence/collab/ui/screencapture/ScreenCaptureShareRosterEntryContributionItem.html#ScreenCaptureShareRosterEntryContributionItem()"><B>ScreenCaptureShareRosterEntryContributionItem()</B></A> - 
Constructor for class org.eclipse.ecf.presence.collab.ui.screencapture.<A HREF="../org/eclipse/ecf/presence/collab/ui/screencapture/ScreenCaptureShareRosterEntryContributionItem.html" title="class in org.eclipse.ecf.presence.collab.ui.screencapture">ScreenCaptureShareRosterEntryContributionItem</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/presence/collab/ui/screencapture/ScreenCaptureShareRosterEntryContributionItem.html#ScreenCaptureShareRosterEntryContributionItem(java.lang.String)"><B>ScreenCaptureShareRosterEntryContributionItem(String)</B></A> - 
Constructor for class org.eclipse.ecf.presence.collab.ui.screencapture.<A HREF="../org/eclipse/ecf/presence/collab/ui/screencapture/ScreenCaptureShareRosterEntryContributionItem.html" title="class in org.eclipse.ecf.presence.collab.ui.screencapture">ScreenCaptureShareRosterEntryContributionItem</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/presence/collab/ui/screencapture/ScreenCaptureStartMessage.html" title="class in org.eclipse.ecf.presence.collab.ui.screencapture"><B>ScreenCaptureStartMessage</B></A> - Class in <A HREF="../org/eclipse/ecf/presence/collab/ui/screencapture/package-summary.html">org.eclipse.ecf.presence.collab.ui.screencapture</A><DD>&nbsp;<DT><A HREF="../org/eclipse/ecf/presence/collab/ui/screencapture/ScreenCaptureStartMessage.html#ScreenCaptureStartMessage(org.eclipse.ecf.core.identity.ID, java.lang.String, org.eclipse.ecf.ui.screencapture.ImageWrapper)"><B>ScreenCaptureStartMessage(ID, String, ImageWrapper)</B></A> - 
Constructor for class org.eclipse.ecf.presence.collab.ui.screencapture.<A HREF="../org/eclipse/ecf/presence/collab/ui/screencapture/ScreenCaptureStartMessage.html" title="class in org.eclipse.ecf.presence.collab.ui.screencapture">ScreenCaptureStartMessage</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/ui/screencapture/ScreenCaptureUtil.html" title="class in org.eclipse.ecf.ui.screencapture"><B>ScreenCaptureUtil</B></A> - Class in <A HREF="../org/eclipse/ecf/ui/screencapture/package-summary.html">org.eclipse.ecf.ui.screencapture</A><DD>&nbsp;<DT><A HREF="../org/eclipse/ecf/ui/screencapture/ScreenCaptureUtil.html#ScreenCaptureUtil()"><B>ScreenCaptureUtil()</B></A> - 
Constructor for class org.eclipse.ecf.ui.screencapture.<A HREF="../org/eclipse/ecf/ui/screencapture/ScreenCaptureUtil.html" title="class in org.eclipse.ecf.ui.screencapture">ScreenCaptureUtil</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/presence/search/IUserSearchManager.html#search(org.eclipse.ecf.presence.search.ICriteria)"><B>search(ICriteria)</B></A> - 
Method in interface org.eclipse.ecf.presence.search.<A HREF="../org/eclipse/ecf/presence/search/IUserSearchManager.html" title="interface in org.eclipse.ecf.presence.search">IUserSearchManager</A>
<DD>Execute the search for a specific criteria, blocking until the search returns.
<DT><A HREF="../org/eclipse/ecf/presence/search/IUserSearchManager.html#search(org.eclipse.ecf.presence.search.ICriteria, org.eclipse.ecf.presence.search.IUserSearchListener)"><B>search(ICriteria, IUserSearchListener)</B></A> - 
Method in interface org.eclipse.ecf.presence.search.<A HREF="../org/eclipse/ecf/presence/search/IUserSearchManager.html" title="interface in org.eclipse.ecf.presence.search">IUserSearchManager</A>
<DD>Execute the search for a specific criteria, not blocking until the search returns.
<DT><A HREF="../org/eclipse/ecf/presence/search/message/IMessageSearchManager.html#search(org.eclipse.ecf.presence.search.ICriteria)"><B>search(ICriteria)</B></A> - 
Method in interface org.eclipse.ecf.presence.search.message.<A HREF="../org/eclipse/ecf/presence/search/message/IMessageSearchManager.html" title="interface in org.eclipse.ecf.presence.search.message">IMessageSearchManager</A>
<DD>Execute the search for a specific criteria, blocking until the search returns.
<DT><A HREF="../org/eclipse/ecf/presence/search/message/IMessageSearchManager.html#search(org.eclipse.ecf.presence.search.ICriteria, org.eclipse.ecf.presence.search.message.IMessageSearchListener)"><B>search(ICriteria, IMessageSearchListener)</B></A> - 
Method in interface org.eclipse.ecf.presence.search.message.<A HREF="../org/eclipse/ecf/presence/search/message/IMessageSearchManager.html" title="interface in org.eclipse.ecf.presence.search.message">IMessageSearchManager</A>
<DD>Execute the search for a specific criteria, not blocking until the search returns.
<DT><A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectMsg.html#searchForMethod(java.lang.reflect.Method[], java.lang.String, java.lang.Class[])"><B>searchForMethod(Method[], String, Class[])</B></A> - 
Static method in class org.eclipse.ecf.core.sharedobject.<A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectMsg.html" title="class in org.eclipse.ecf.core.sharedobject">SharedObjectMsg</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/identity/IDFactory.html#SECURITY_PROPERTY"><B>SECURITY_PROPERTY</B></A> - 
Static variable in class org.eclipse.ecf.core.identity.<A HREF="../org/eclipse/ecf/core/identity/IDFactory.html" title="class in org.eclipse.ecf.core.identity">IDFactory</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/ui/actions/SynchContainerConnectAction.html#selectionChanged(org.eclipse.jface.action.IAction, org.eclipse.jface.viewers.ISelection)"><B>selectionChanged(IAction, ISelection)</B></A> - 
Method in class org.eclipse.ecf.ui.actions.<A HREF="../org/eclipse/ecf/ui/actions/SynchContainerConnectAction.html" title="class in org.eclipse.ecf.ui.actions">SynchContainerConnectAction</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/docshare/messages/SelectionMessage.html" title="class in org.eclipse.ecf.docshare.messages"><B>SelectionMessage</B></A> - Class in <A HREF="../org/eclipse/ecf/docshare/messages/package-summary.html">org.eclipse.ecf.docshare.messages</A><DD>&nbsp;<DT><A HREF="../org/eclipse/ecf/docshare/messages/SelectionMessage.html#SelectionMessage(int, int, int, int)"><B>SelectionMessage(int, int, int, int)</B></A> - 
Constructor for class org.eclipse.ecf.docshare.messages.<A HREF="../org/eclipse/ecf/docshare/messages/SelectionMessage.html" title="class in org.eclipse.ecf.docshare.messages">SelectionMessage</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/docshare/messages/SelectionMessage.html#SelectionMessage(int, int)"><B>SelectionMessage(int, int)</B></A> - 
Constructor for class org.eclipse.ecf.docshare.messages.<A HREF="../org/eclipse/ecf/docshare/messages/SelectionMessage.html" title="class in org.eclipse.ecf.docshare.messages">SelectionMessage</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/osgi/services/distribution/AbstractProxyContainerFinder.html#selectLocalImportedConfig(java.lang.String[], java.util.Dictionary)"><B>selectLocalImportedConfig(String[], Dictionary)</B></A> - 
Method in class org.eclipse.ecf.osgi.services.distribution.<A HREF="../org/eclipse/ecf/osgi/services/distribution/AbstractProxyContainerFinder.html" title="class in org.eclipse.ecf.osgi.services.distribution">AbstractProxyContainerFinder</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/browse/AbstractFileSystemBrowser.html#selectProxyFromProxies(java.lang.String, org.eclipse.core.net.proxy.IProxyData[])"><B>selectProxyFromProxies(String, IProxyData[])</B></A> - 
Method in class org.eclipse.ecf.provider.filetransfer.browse.<A HREF="../org/eclipse/ecf/provider/filetransfer/browse/AbstractFileSystemBrowser.html" title="class in org.eclipse.ecf.provider.filetransfer.browse">AbstractFileSystemBrowser</A>
<DD>Select a single proxy from a set of proxies available for the given host.
<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/outgoing/AbstractOutgoingFileTransfer.html#selectProxyFromProxies(java.lang.String, org.eclipse.core.net.proxy.IProxyData[])"><B>selectProxyFromProxies(String, IProxyData[])</B></A> - 
Method in class org.eclipse.ecf.provider.filetransfer.outgoing.<A HREF="../org/eclipse/ecf/provider/filetransfer/outgoing/AbstractOutgoingFileTransfer.html" title="class in org.eclipse.ecf.provider.filetransfer.outgoing">AbstractOutgoingFileTransfer</A>
<DD>Select a single proxy from a set of proxies available for the given host.
<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/retrieve/AbstractRetrieveFileTransfer.html#selectProxyFromProxies(java.lang.String, org.eclipse.core.net.proxy.IProxyData[])"><B>selectProxyFromProxies(String, IProxyData[])</B></A> - 
Method in class org.eclipse.ecf.provider.filetransfer.retrieve.<A HREF="../org/eclipse/ecf/provider/filetransfer/retrieve/AbstractRetrieveFileTransfer.html" title="class in org.eclipse.ecf.provider.filetransfer.retrieve">AbstractRetrieveFileTransfer</A>
<DD>Select a single proxy from a set of proxies available for the given host.
<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/util/ProxySetupHelper.html#selectProxyFromProxies(java.lang.String, org.eclipse.core.net.proxy.IProxyData[])"><B>selectProxyFromProxies(String, IProxyData[])</B></A> - 
Static method in class org.eclipse.ecf.provider.filetransfer.util.<A HREF="../org/eclipse/ecf/provider/filetransfer/util/ProxySetupHelper.html" title="class in org.eclipse.ecf.provider.filetransfer.util">ProxySetupHelper</A>
<DD>Select a single proxy from a set of proxies available for the given host.
<DT><A HREF="../org/eclipse/ecf/remoteservice/RemoteServiceContainer.html#selectReference(org.eclipse.ecf.remoteservice.IRemoteServiceReference[])"><B>selectReference(IRemoteServiceReference[])</B></A> - 
Method in class org.eclipse.ecf.remoteservice.<A HREF="../org/eclipse/ecf/remoteservice/RemoteServiceContainer.html" title="class in org.eclipse.ecf.remoteservice">RemoteServiceContainer</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/presence/ui/MessagesView.html#selectTab(org.eclipse.ecf.presence.im.IChatMessageSender, org.eclipse.ecf.presence.im.ITypingMessageSender, org.eclipse.ecf.core.identity.ID, org.eclipse.ecf.core.identity.ID)"><B>selectTab(IChatMessageSender, ITypingMessageSender, ID, ID)</B></A> - 
Method in class org.eclipse.ecf.presence.ui.<A HREF="../org/eclipse/ecf/presence/ui/MessagesView.html" title="class in org.eclipse.ecf.presence.ui">MessagesView</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/remoteservice/generic/RegistrySharedObject.html#sendAddRegistration(org.eclipse.ecf.core.identity.ID, org.eclipse.ecf.provider.remoteservice.generic.RemoteServiceRegistrationImpl)"><B>sendAddRegistration(ID, RemoteServiceRegistrationImpl)</B></A> - 
Method in class org.eclipse.ecf.provider.remoteservice.generic.<A HREF="../org/eclipse/ecf/provider/remoteservice/generic/RegistrySharedObject.html" title="class in org.eclipse.ecf.provider.remoteservice.generic">RegistrySharedObject</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/remoteservice/generic/RegistrySharedObject.html#sendAddRegistration(org.eclipse.ecf.core.identity.ID, java.lang.Integer, org.eclipse.ecf.provider.remoteservice.generic.RemoteServiceRegistrationImpl)"><B>sendAddRegistration(ID, Integer, RemoteServiceRegistrationImpl)</B></A> - 
Method in class org.eclipse.ecf.provider.remoteservice.generic.<A HREF="../org/eclipse/ecf/provider/remoteservice/generic/RegistrySharedObject.html" title="class in org.eclipse.ecf.provider.remoteservice.generic">RegistrySharedObject</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/remoteservice/generic/RegistrySharedObject.html#sendAddRegistrationRequest(org.eclipse.ecf.core.identity.ID, org.eclipse.ecf.provider.remoteservice.generic.AddRegistrationRequest, java.io.Serializable)"><B>sendAddRegistrationRequest(ID, AddRegistrationRequest, Serializable)</B></A> - 
Method in class org.eclipse.ecf.provider.remoteservice.generic.<A HREF="../org/eclipse/ecf/provider/remoteservice/generic/RegistrySharedObject.html" title="class in org.eclipse.ecf.provider.remoteservice.generic">RegistrySharedObject</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/remoteservice/generic/RegistrySharedObject.html#sendAddRegistrationRequestRefused(org.eclipse.ecf.core.identity.ID, java.lang.Integer, java.lang.Exception)"><B>sendAddRegistrationRequestRefused(ID, Integer, Exception)</B></A> - 
Method in class org.eclipse.ecf.provider.remoteservice.generic.<A HREF="../org/eclipse/ecf/provider/remoteservice/generic/RegistrySharedObject.html" title="class in org.eclipse.ecf.provider.remoteservice.generic">RegistrySharedObject</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/remoteservice/generic/RegistrySharedObject.html#sendAddRegistrations(org.eclipse.ecf.core.identity.ID, java.lang.Integer, org.eclipse.ecf.provider.remoteservice.generic.RemoteServiceRegistrationImpl[])"><B>sendAddRegistrations(ID, Integer, RemoteServiceRegistrationImpl[])</B></A> - 
Method in class org.eclipse.ecf.provider.remoteservice.generic.<A HREF="../org/eclipse/ecf/provider/remoteservice/generic/RegistrySharedObject.html" title="class in org.eclipse.ecf.provider.remoteservice.generic">RegistrySharedObject</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/comm/IAsynchConnection.html#sendAsynch(org.eclipse.ecf.core.identity.ID, byte[])"><B>sendAsynch(ID, byte[])</B></A> - 
Method in interface org.eclipse.ecf.provider.comm.<A HREF="../org/eclipse/ecf/provider/comm/IAsynchConnection.html" title="interface in org.eclipse.ecf.provider.comm">IAsynchConnection</A>
<DD>Send data asynchronously.
<DT><A HREF="../org/eclipse/ecf/provider/comm/tcp/Client.html#sendAsynch(org.eclipse.ecf.core.identity.ID, byte[])"><B>sendAsynch(ID, byte[])</B></A> - 
Method in class org.eclipse.ecf.provider.comm.tcp.<A HREF="../org/eclipse/ecf/provider/comm/tcp/Client.html" title="class in org.eclipse.ecf.provider.comm.tcp">Client</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/comm/tcp/Client.html#sendAsynch(org.eclipse.ecf.core.identity.ID, java.lang.Object)"><B>sendAsynch(ID, Object)</B></A> - 
Method in class org.eclipse.ecf.provider.comm.tcp.<A HREF="../org/eclipse/ecf/provider/comm/tcp/Client.html" title="class in org.eclipse.ecf.provider.comm.tcp">Client</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/filetransfer/IRemoteFileSystemBrowserContainerAdapter.html#sendBrowseRequest(org.eclipse.ecf.filetransfer.identity.IFileID, org.eclipse.ecf.filetransfer.IRemoteFileSystemListener)"><B>sendBrowseRequest(IFileID, IRemoteFileSystemListener)</B></A> - 
Method in interface org.eclipse.ecf.filetransfer.<A HREF="../org/eclipse/ecf/filetransfer/IRemoteFileSystemBrowserContainerAdapter.html" title="interface in org.eclipse.ecf.filetransfer">IRemoteFileSystemBrowserContainerAdapter</A>
<DD>Send a request for file or directory information for given directoryOrFileID.
<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/browse/AbstractFileSystemBrowser.html#sendBrowseRequest()"><B>sendBrowseRequest()</B></A> - 
Method in class org.eclipse.ecf.provider.filetransfer.browse.<A HREF="../org/eclipse/ecf/provider/filetransfer/browse/AbstractFileSystemBrowser.html" title="class in org.eclipse.ecf.provider.filetransfer.browse">AbstractFileSystemBrowser</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/browse/MultiProtocolFileSystemBrowserAdapter.html#sendBrowseRequest(org.eclipse.ecf.filetransfer.identity.IFileID, org.eclipse.ecf.filetransfer.IRemoteFileSystemListener)"><B>sendBrowseRequest(IFileID, IRemoteFileSystemListener)</B></A> - 
Method in class org.eclipse.ecf.provider.filetransfer.browse.<A HREF="../org/eclipse/ecf/provider/filetransfer/browse/MultiProtocolFileSystemBrowserAdapter.html" title="class in org.eclipse.ecf.provider.filetransfer.browse">MultiProtocolFileSystemBrowserAdapter</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/remoteservice/generic/RegistrySharedObject.html#sendCallRequest(org.eclipse.ecf.provider.remoteservice.generic.RemoteServiceRegistrationImpl, org.eclipse.ecf.remoteservice.IRemoteCall)"><B>sendCallRequest(RemoteServiceRegistrationImpl, IRemoteCall)</B></A> - 
Method in class org.eclipse.ecf.provider.remoteservice.generic.<A HREF="../org/eclipse/ecf/provider/remoteservice/generic/RegistrySharedObject.html" title="class in org.eclipse.ecf.provider.remoteservice.generic">RegistrySharedObject</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/telephony/call/ICallSessionContainerAdapter.html#sendCallRequest(org.eclipse.ecf.core.identity.ID[], org.eclipse.ecf.telephony.call.ICallSessionListener, java.util.Map)"><B>sendCallRequest(ID[], ICallSessionListener, Map)</B></A> - 
Method in interface org.eclipse.ecf.telephony.call.<A HREF="../org/eclipse/ecf/telephony/call/ICallSessionContainerAdapter.html" title="interface in org.eclipse.ecf.telephony.call">ICallSessionContainerAdapter</A>
<DD>Initiate call.
<DT><A HREF="../org/eclipse/ecf/telephony/call/ICallSessionContainerAdapter.html#sendCallRequest(org.eclipse.ecf.core.identity.ID, org.eclipse.ecf.telephony.call.ICallSessionListener, java.util.Map)"><B>sendCallRequest(ID, ICallSessionListener, Map)</B></A> - 
Method in interface org.eclipse.ecf.telephony.call.<A HREF="../org/eclipse/ecf/telephony/call/ICallSessionContainerAdapter.html" title="interface in org.eclipse.ecf.telephony.call">ICallSessionContainerAdapter</A>
<DD>Initiate call.
<DT><A HREF="../org/eclipse/ecf/provider/remoteservice/generic/RegistrySharedObject.html#sendCallRequestWithListener(org.eclipse.ecf.provider.remoteservice.generic.RemoteServiceRegistrationImpl, org.eclipse.ecf.remoteservice.IRemoteCall, org.eclipse.ecf.remoteservice.IRemoteCallListener)"><B>sendCallRequestWithListener(RemoteServiceRegistrationImpl, IRemoteCall, IRemoteCallListener)</B></A> - 
Method in class org.eclipse.ecf.provider.remoteservice.generic.<A HREF="../org/eclipse/ecf/provider/remoteservice/generic/RegistrySharedObject.html" title="class in org.eclipse.ecf.provider.remoteservice.generic">RegistrySharedObject</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/remoteservice/generic/RegistrySharedObject.html#sendCallResponse(org.eclipse.ecf.core.identity.ID, org.eclipse.ecf.provider.remoteservice.generic.Response)"><B>sendCallResponse(ID, Response)</B></A> - 
Method in class org.eclipse.ecf.provider.remoteservice.generic.<A HREF="../org/eclipse/ecf/provider/remoteservice/generic/RegistrySharedObject.html" title="class in org.eclipse.ecf.provider.remoteservice.generic">RegistrySharedObject</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/presence/im/IChat.html#sendChatMessage(org.eclipse.ecf.presence.im.IChatMessage.Type, java.lang.String, java.lang.String, java.util.Map)"><B>sendChatMessage(IChatMessage.Type, String, String, Map)</B></A> - 
Method in interface org.eclipse.ecf.presence.im.<A HREF="../org/eclipse/ecf/presence/im/IChat.html" title="interface in org.eclipse.ecf.presence.im">IChat</A>
<DD>Send chat message to receiver.
<DT><A HREF="../org/eclipse/ecf/presence/im/IChat.html#sendChatMessage(java.lang.String)"><B>sendChatMessage(String)</B></A> - 
Method in interface org.eclipse.ecf.presence.im.<A HREF="../org/eclipse/ecf/presence/im/IChat.html" title="interface in org.eclipse.ecf.presence.im">IChat</A>
<DD>Send chat message to receiver.
<DT><A HREF="../org/eclipse/ecf/presence/im/IChatMessageSender.html#sendChatMessage(org.eclipse.ecf.core.identity.ID, org.eclipse.ecf.core.identity.ID, org.eclipse.ecf.presence.im.IChatMessage.Type, java.lang.String, java.lang.String, java.util.Map)"><B>sendChatMessage(ID, ID, IChatMessage.Type, String, String, Map)</B></A> - 
Method in interface org.eclipse.ecf.presence.im.<A HREF="../org/eclipse/ecf/presence/im/IChatMessageSender.html" title="interface in org.eclipse.ecf.presence.im">IChatMessageSender</A>
<DD>Send chat message to given ID.
<DT><A HREF="../org/eclipse/ecf/presence/im/IChatMessageSender.html#sendChatMessage(org.eclipse.ecf.core.identity.ID, java.lang.String)"><B>sendChatMessage(ID, String)</B></A> - 
Method in interface org.eclipse.ecf.presence.im.<A HREF="../org/eclipse/ecf/presence/im/IChatMessageSender.html" title="interface in org.eclipse.ecf.presence.im">IChatMessageSender</A>
<DD>Send chat message to given ID.
<DT><A HREF="../org/eclipse/ecf/core/sharedobject/TwoPhaseCommitEventProcessor.html#sendCommit()"><B>sendCommit()</B></A> - 
Method in class org.eclipse.ecf.core.sharedobject.<A HREF="../org/eclipse/ecf/core/sharedobject/TwoPhaseCommitEventProcessor.html" title="class in org.eclipse.ecf.core.sharedobject">TwoPhaseCommitEventProcessor</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/sharedobject/ISharedObjectContext.html#sendCreate(org.eclipse.ecf.core.identity.ID, org.eclipse.ecf.core.sharedobject.ReplicaSharedObjectDescription)"><B>sendCreate(ID, ReplicaSharedObjectDescription)</B></A> - 
Method in interface org.eclipse.ecf.core.sharedobject.<A HREF="../org/eclipse/ecf/core/sharedobject/ISharedObjectContext.html" title="interface in org.eclipse.ecf.core.sharedobject">ISharedObjectContext</A>
<DD>Send message to create a remote instance of an ISharedObject with the
 same ID as this instance.
<DT><A HREF="../org/eclipse/ecf/provider/generic/ClientSOContainer.html#sendCreate(org.eclipse.ecf.core.identity.ID, org.eclipse.ecf.core.identity.ID, org.eclipse.ecf.core.sharedobject.SharedObjectDescription)"><B>sendCreate(ID, ID, SharedObjectDescription)</B></A> - 
Method in class org.eclipse.ecf.provider.generic.<A HREF="../org/eclipse/ecf/provider/generic/ClientSOContainer.html" title="class in org.eclipse.ecf.provider.generic">ClientSOContainer</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/generic/SOContainer.html#sendCreate(org.eclipse.ecf.core.identity.ID, org.eclipse.ecf.core.identity.ID, org.eclipse.ecf.core.sharedobject.SharedObjectDescription)"><B>sendCreate(ID, ID, SharedObjectDescription)</B></A> - 
Method in class org.eclipse.ecf.provider.generic.<A HREF="../org/eclipse/ecf/provider/generic/SOContainer.html" title="class in org.eclipse.ecf.provider.generic">SOContainer</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/generic/SOContext.html#sendCreate(org.eclipse.ecf.core.identity.ID, org.eclipse.ecf.core.sharedobject.ReplicaSharedObjectDescription)"><B>sendCreate(ID, ReplicaSharedObjectDescription)</B></A> - 
Method in class org.eclipse.ecf.provider.generic.<A HREF="../org/eclipse/ecf/provider/generic/SOContext.html" title="class in org.eclipse.ecf.provider.generic">SOContext</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/generic/ClientSOContainer.html#sendCreateMsg(org.eclipse.ecf.core.identity.ID, org.eclipse.ecf.core.sharedobject.SharedObjectDescription)"><B>sendCreateMsg(ID, SharedObjectDescription)</B></A> - 
Method in class org.eclipse.ecf.provider.generic.<A HREF="../org/eclipse/ecf/provider/generic/ClientSOContainer.html" title="class in org.eclipse.ecf.provider.generic">ClientSOContainer</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/sharedobject/ISharedObjectContext.html#sendCreateResponse(org.eclipse.ecf.core.identity.ID, java.lang.Throwable, long)"><B>sendCreateResponse(ID, Throwable, long)</B></A> - 
Method in interface org.eclipse.ecf.core.sharedobject.<A HREF="../org/eclipse/ecf/core/sharedobject/ISharedObjectContext.html" title="interface in org.eclipse.ecf.core.sharedobject">ISharedObjectContext</A>
<DD>Send create response back to an ISharedObject with the same ID as this
 instance.
<DT><A HREF="../org/eclipse/ecf/provider/generic/ClientSOContainer.html#sendCreateResponse(org.eclipse.ecf.core.identity.ID, org.eclipse.ecf.core.identity.ID, java.lang.Throwable, long)"><B>sendCreateResponse(ID, ID, Throwable, long)</B></A> - 
Method in class org.eclipse.ecf.provider.generic.<A HREF="../org/eclipse/ecf/provider/generic/ClientSOContainer.html" title="class in org.eclipse.ecf.provider.generic">ClientSOContainer</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/generic/SOContainer.html#sendCreateResponse(org.eclipse.ecf.core.identity.ID, org.eclipse.ecf.core.identity.ID, java.lang.Throwable, long)"><B>sendCreateResponse(ID, ID, Throwable, long)</B></A> - 
Method in class org.eclipse.ecf.provider.generic.<A HREF="../org/eclipse/ecf/provider/generic/SOContainer.html" title="class in org.eclipse.ecf.provider.generic">SOContainer</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/generic/SOContext.html#sendCreateResponse(org.eclipse.ecf.core.identity.ID, java.lang.Throwable, long)"><B>sendCreateResponse(ID, Throwable, long)</B></A> - 
Method in class org.eclipse.ecf.provider.generic.<A HREF="../org/eclipse/ecf/provider/generic/SOContext.html" title="class in org.eclipse.ecf.provider.generic">SOContext</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/generic/ClientSOContainer.html#sendCreateResponseSharedObjectMessage(org.eclipse.ecf.core.identity.ID, org.eclipse.ecf.core.identity.ID, java.lang.Throwable, long)"><B>sendCreateResponseSharedObjectMessage(ID, ID, Throwable, long)</B></A> - 
Method in class org.eclipse.ecf.provider.generic.<A HREF="../org/eclipse/ecf/provider/generic/ClientSOContainer.html" title="class in org.eclipse.ecf.provider.generic">ClientSOContainer</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/generic/SOContainer.html#sendCreateResponseSharedObjectMessage(org.eclipse.ecf.core.identity.ID, org.eclipse.ecf.core.identity.ID, java.lang.Throwable, long)"><B>sendCreateResponseSharedObjectMessage(ID, ID, Throwable, long)</B></A> - 
Method in class org.eclipse.ecf.provider.generic.<A HREF="../org/eclipse/ecf/provider/generic/SOContainer.html" title="class in org.eclipse.ecf.provider.generic">SOContainer</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/generic/ClientSOContainer.html#sendCreateSharedObjectMessage(org.eclipse.ecf.core.identity.ID, org.eclipse.ecf.core.sharedobject.SharedObjectDescription)"><B>sendCreateSharedObjectMessage(ID, SharedObjectDescription)</B></A> - 
Method in class org.eclipse.ecf.provider.generic.<A HREF="../org/eclipse/ecf/provider/generic/ClientSOContainer.html" title="class in org.eclipse.ecf.provider.generic">ClientSOContainer</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/generic/SOContainer.html#sendCreateSharedObjectMessage(org.eclipse.ecf.core.identity.ID, org.eclipse.ecf.core.sharedobject.SharedObjectDescription)"><B>sendCreateSharedObjectMessage(ID, SharedObjectDescription)</B></A> - 
Method in class org.eclipse.ecf.provider.generic.<A HREF="../org/eclipse/ecf/provider/generic/SOContainer.html" title="class in org.eclipse.ecf.provider.generic">SOContainer</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/sharedobject/ISharedObjectContext.html#sendDispose(org.eclipse.ecf.core.identity.ID)"><B>sendDispose(ID)</B></A> - 
Method in interface org.eclipse.ecf.core.sharedobject.<A HREF="../org/eclipse/ecf/core/sharedobject/ISharedObjectContext.html" title="interface in org.eclipse.ecf.core.sharedobject">ISharedObjectContext</A>
<DD>Send message to dispose of a remote instance of the ISharedObject with
 same ID as this instance.
<DT><A HREF="../org/eclipse/ecf/provider/generic/ClientSOContainer.html#sendDispose(org.eclipse.ecf.core.identity.ID, org.eclipse.ecf.core.identity.ID)"><B>sendDispose(ID, ID)</B></A> - 
Method in class org.eclipse.ecf.provider.generic.<A HREF="../org/eclipse/ecf/provider/generic/ClientSOContainer.html" title="class in org.eclipse.ecf.provider.generic">ClientSOContainer</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/generic/SOContainer.html#sendDispose(org.eclipse.ecf.core.identity.ID, org.eclipse.ecf.core.identity.ID)"><B>sendDispose(ID, ID)</B></A> - 
Method in class org.eclipse.ecf.provider.generic.<A HREF="../org/eclipse/ecf/provider/generic/SOContainer.html" title="class in org.eclipse.ecf.provider.generic">SOContainer</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/generic/SOContext.html#sendDispose(org.eclipse.ecf.core.identity.ID)"><B>sendDispose(ID)</B></A> - 
Method in class org.eclipse.ecf.provider.generic.<A HREF="../org/eclipse/ecf/provider/generic/SOContext.html" title="class in org.eclipse.ecf.provider.generic">SOContext</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/generic/ClientSOContainer.html#sendDisposeSharedObjectMessage(org.eclipse.ecf.core.identity.ID, org.eclipse.ecf.core.identity.ID)"><B>sendDisposeSharedObjectMessage(ID, ID)</B></A> - 
Method in class org.eclipse.ecf.provider.generic.<A HREF="../org/eclipse/ecf/provider/generic/ClientSOContainer.html" title="class in org.eclipse.ecf.provider.generic">ClientSOContainer</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/generic/SOContainer.html#sendDisposeSharedObjectMessage(org.eclipse.ecf.core.identity.ID, org.eclipse.ecf.core.identity.ID)"><B>sendDisposeSharedObjectMessage(ID, ID)</B></A> - 
Method in class org.eclipse.ecf.provider.generic.<A HREF="../org/eclipse/ecf/provider/generic/SOContainer.html" title="class in org.eclipse.ecf.provider.generic">SOContainer</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/telephony/call/dtmf/IDTMFCallSessionAdapter.html#sendDTMF(org.eclipse.ecf.telephony.call.dtmf.IDTMFCallSessionAdapter.DTMF)"><B>sendDTMF(IDTMFCallSessionAdapter.DTMF)</B></A> - 
Method in interface org.eclipse.ecf.telephony.call.dtmf.<A HREF="../org/eclipse/ecf/telephony/call/dtmf/IDTMFCallSessionAdapter.html" title="interface in org.eclipse.ecf.telephony.call.dtmf">IDTMFCallSessionAdapter</A>
<DD>Send DTMF to receiver.
<DT><A HREF="../org/eclipse/ecf/remoteservice/eventadmin/DistributedEventAdmin.html#sendEvent(org.osgi.service.event.Event)"><B>sendEvent(Event)</B></A> - 
Method in class org.eclipse.ecf.remoteservice.eventadmin.<A HREF="../org/eclipse/ecf/remoteservice/eventadmin/DistributedEventAdmin.html" title="class in org.eclipse.ecf.remoteservice.eventadmin">DistributedEventAdmin</A>
<DD>Send the given event synchronously.
<DT><A HREF="../org/eclipse/ecf/filetransfer/ui/actions/AbstractFileSendAction.html#sendFileToTarget()"><B>sendFileToTarget()</B></A> - 
Method in class org.eclipse.ecf.filetransfer.ui.actions.<A HREF="../org/eclipse/ecf/filetransfer/ui/actions/AbstractFileSendAction.html" title="class in org.eclipse.ecf.filetransfer.ui.actions">AbstractFileSendAction</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/filetransfer/SendFileTransferException.html" title="class in org.eclipse.ecf.filetransfer"><B>SendFileTransferException</B></A> - Exception in <A HREF="../org/eclipse/ecf/filetransfer/package-summary.html">org.eclipse.ecf.filetransfer</A><DD>Outgoing file transfer exception<DT><A HREF="../org/eclipse/ecf/filetransfer/SendFileTransferException.html#SendFileTransferException(org.eclipse.core.runtime.IStatus)"><B>SendFileTransferException(IStatus)</B></A> - 
Constructor for exception org.eclipse.ecf.filetransfer.<A HREF="../org/eclipse/ecf/filetransfer/SendFileTransferException.html" title="class in org.eclipse.ecf.filetransfer">SendFileTransferException</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/filetransfer/SendFileTransferException.html#SendFileTransferException()"><B>SendFileTransferException()</B></A> - 
Constructor for exception org.eclipse.ecf.filetransfer.<A HREF="../org/eclipse/ecf/filetransfer/SendFileTransferException.html" title="class in org.eclipse.ecf.filetransfer">SendFileTransferException</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/filetransfer/SendFileTransferException.html#SendFileTransferException(int)"><B>SendFileTransferException(int)</B></A> - 
Constructor for exception org.eclipse.ecf.filetransfer.<A HREF="../org/eclipse/ecf/filetransfer/SendFileTransferException.html" title="class in org.eclipse.ecf.filetransfer">SendFileTransferException</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/filetransfer/SendFileTransferException.html#SendFileTransferException(java.lang.String)"><B>SendFileTransferException(String)</B></A> - 
Constructor for exception org.eclipse.ecf.filetransfer.<A HREF="../org/eclipse/ecf/filetransfer/SendFileTransferException.html" title="class in org.eclipse.ecf.filetransfer">SendFileTransferException</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/filetransfer/SendFileTransferException.html#SendFileTransferException(java.lang.String, int)"><B>SendFileTransferException(String, int)</B></A> - 
Constructor for exception org.eclipse.ecf.filetransfer.<A HREF="../org/eclipse/ecf/filetransfer/SendFileTransferException.html" title="class in org.eclipse.ecf.filetransfer">SendFileTransferException</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/filetransfer/SendFileTransferException.html#SendFileTransferException(java.lang.Throwable)"><B>SendFileTransferException(Throwable)</B></A> - 
Constructor for exception org.eclipse.ecf.filetransfer.<A HREF="../org/eclipse/ecf/filetransfer/SendFileTransferException.html" title="class in org.eclipse.ecf.filetransfer">SendFileTransferException</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/filetransfer/SendFileTransferException.html#SendFileTransferException(java.lang.Throwable, int)"><B>SendFileTransferException(Throwable, int)</B></A> - 
Constructor for exception org.eclipse.ecf.filetransfer.<A HREF="../org/eclipse/ecf/filetransfer/SendFileTransferException.html" title="class in org.eclipse.ecf.filetransfer">SendFileTransferException</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/filetransfer/SendFileTransferException.html#SendFileTransferException(java.lang.String, java.lang.Throwable)"><B>SendFileTransferException(String, Throwable)</B></A> - 
Constructor for exception org.eclipse.ecf.filetransfer.<A HREF="../org/eclipse/ecf/filetransfer/SendFileTransferException.html" title="class in org.eclipse.ecf.filetransfer">SendFileTransferException</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/filetransfer/SendFileTransferException.html#SendFileTransferException(java.lang.String, java.lang.Throwable, int)"><B>SendFileTransferException(String, Throwable, int)</B></A> - 
Constructor for exception org.eclipse.ecf.filetransfer.<A HREF="../org/eclipse/ecf/filetransfer/SendFileTransferException.html" title="class in org.eclipse.ecf.filetransfer">SendFileTransferException</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/remoteservice/generic/RegistrySharedObject.html#sendFireRequest(org.eclipse.ecf.provider.remoteservice.generic.RemoteServiceRegistrationImpl, org.eclipse.ecf.remoteservice.IRemoteCall)"><B>sendFireRequest(RemoteServiceRegistrationImpl, IRemoteCall)</B></A> - 
Method in class org.eclipse.ecf.provider.remoteservice.generic.<A HREF="../org/eclipse/ecf/provider/remoteservice/generic/RegistrySharedObject.html" title="class in org.eclipse.ecf.provider.remoteservice.generic">RegistrySharedObject</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/presence/collab/ui/screencapture/ScreenCaptureShare.html#sendImage(org.eclipse.ecf.core.identity.ID, java.lang.String, org.eclipse.ecf.core.identity.ID, org.eclipse.swt.graphics.ImageData)"><B>sendImage(ID, String, ID, ImageData)</B></A> - 
Method in class org.eclipse.ecf.presence.collab.ui.screencapture.<A HREF="../org/eclipse/ecf/presence/collab/ui/screencapture/ScreenCaptureShare.html" title="class in org.eclipse.ecf.presence.collab.ui.screencapture">ScreenCaptureShare</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/ui/screencapture/IImageSender.html#sendImage(org.eclipse.ecf.core.identity.ID, org.eclipse.swt.graphics.ImageData)"><B>sendImage(ID, ImageData)</B></A> - 
Method in interface org.eclipse.ecf.ui.screencapture.<A HREF="../org/eclipse/ecf/ui/screencapture/IImageSender.html" title="interface in org.eclipse.ecf.ui.screencapture">IImageSender</A>
<DD>Send imageData to targetID.
<DT><A HREF="../org/eclipse/ecf/core/sharedobject/events/ContainerSharedObjectMessageReceivingEvent.html#sendingContainerID"><B>sendingContainerID</B></A> - 
Variable in class org.eclipse.ecf.core.sharedobject.events.<A HREF="../org/eclipse/ecf/core/sharedobject/events/ContainerSharedObjectMessageReceivingEvent.html" title="class in org.eclipse.ecf.core.sharedobject.events">ContainerSharedObjectMessageReceivingEvent</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/presence/chatroom/IChatRoomInvitationSender.html#sendInvitation(org.eclipse.ecf.core.identity.ID, org.eclipse.ecf.core.identity.ID, java.lang.String, java.lang.String)"><B>sendInvitation(ID, ID, String, String)</B></A> - 
Method in interface org.eclipse.ecf.presence.chatroom.<A HREF="../org/eclipse/ecf/presence/chatroom/IChatRoomInvitationSender.html" title="interface in org.eclipse.ecf.presence.chatroom">IChatRoomInvitationSender</A>
<DD>Send invitation to join in chat room to target user.
<DT><A HREF="../org/eclipse/ecf/core/sharedobject/ISharedObjectContext.html#sendMessage(org.eclipse.ecf.core.identity.ID, java.lang.Object)"><B>sendMessage(ID, Object)</B></A> - 
Method in interface org.eclipse.ecf.core.sharedobject.<A HREF="../org/eclipse/ecf/core/sharedobject/ISharedObjectContext.html" title="interface in org.eclipse.ecf.core.sharedobject">ISharedObjectContext</A>
<DD>Send arbitrary message to remote instance of the ISharedObject with same
 ID as this instance.
<DT><A HREF="../org/eclipse/ecf/datashare/AbstractShare.html#sendMessage(org.eclipse.ecf.core.identity.ID, byte[])"><B>sendMessage(ID, byte[])</B></A> - 
Method in class org.eclipse.ecf.datashare.<A HREF="../org/eclipse/ecf/datashare/AbstractShare.html" title="class in org.eclipse.ecf.datashare">AbstractShare</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/datashare/IChannel.html#sendMessage(byte[])"><B>sendMessage(byte[])</B></A> - 
Method in interface org.eclipse.ecf.datashare.<A HREF="../org/eclipse/ecf/datashare/IChannel.html" title="interface in org.eclipse.ecf.datashare">IChannel</A>
<DD>Send message to remote instances of this channel
<DT><A HREF="../org/eclipse/ecf/datashare/IChannel.html#sendMessage(org.eclipse.ecf.core.identity.ID, byte[])"><B>sendMessage(ID, byte[])</B></A> - 
Method in interface org.eclipse.ecf.datashare.<A HREF="../org/eclipse/ecf/datashare/IChannel.html" title="interface in org.eclipse.ecf.datashare">IChannel</A>
<DD>Send message to remote instances of this channel
<DT><A HREF="../org/eclipse/ecf/presence/chatroom/IChatRoomMessageSender.html#sendMessage(java.lang.String)"><B>sendMessage(String)</B></A> - 
Method in interface org.eclipse.ecf.presence.chatroom.<A HREF="../org/eclipse/ecf/presence/chatroom/IChatRoomMessageSender.html" title="interface in org.eclipse.ecf.presence.chatroom">IChatRoomMessageSender</A>
<DD>Send a message to chat room
<DT><A HREF="../org/eclipse/ecf/provider/datashare/BaseChannel.html#sendMessage(byte[])"><B>sendMessage(byte[])</B></A> - 
Method in class org.eclipse.ecf.provider.datashare.<A HREF="../org/eclipse/ecf/provider/datashare/BaseChannel.html" title="class in org.eclipse.ecf.provider.datashare">BaseChannel</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/datashare/BaseChannel.html#sendMessage(org.eclipse.ecf.core.identity.ID, byte[])"><B>sendMessage(ID, byte[])</B></A> - 
Method in class org.eclipse.ecf.provider.datashare.<A HREF="../org/eclipse/ecf/provider/datashare/BaseChannel.html" title="class in org.eclipse.ecf.provider.datashare">BaseChannel</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/datashare/nio/NIOChannel.html#sendMessage(byte[])"><B>sendMessage(byte[])</B></A> - 
Method in class org.eclipse.ecf.provider.datashare.nio.<A HREF="../org/eclipse/ecf/provider/datashare/nio/NIOChannel.html" title="class in org.eclipse.ecf.provider.datashare.nio">NIOChannel</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/datashare/nio/NIOChannel.html#sendMessage(org.eclipse.ecf.core.identity.ID, byte[])"><B>sendMessage(ID, byte[])</B></A> - 
Method in class org.eclipse.ecf.provider.datashare.nio.<A HREF="../org/eclipse/ecf/provider/datashare/nio/NIOChannel.html" title="class in org.eclipse.ecf.provider.datashare.nio">NIOChannel</A>
<DD>Sends a message to a remote instance of this channel of the target peer.
<DT><A HREF="../org/eclipse/ecf/provider/generic/ClientSOContainer.html#sendMessage(org.eclipse.ecf.provider.generic.ContainerMessage)"><B>sendMessage(ContainerMessage)</B></A> - 
Method in class org.eclipse.ecf.provider.generic.<A HREF="../org/eclipse/ecf/provider/generic/ClientSOContainer.html" title="class in org.eclipse.ecf.provider.generic">ClientSOContainer</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/generic/ClientSOContainer.html#sendMessage(org.eclipse.ecf.core.identity.ID, org.eclipse.ecf.core.identity.ID, java.lang.Object)"><B>sendMessage(ID, ID, Object)</B></A> - 
Method in class org.eclipse.ecf.provider.generic.<A HREF="../org/eclipse/ecf/provider/generic/ClientSOContainer.html" title="class in org.eclipse.ecf.provider.generic">ClientSOContainer</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/generic/SOContainer.html#sendMessage(org.eclipse.ecf.provider.generic.ContainerMessage)"><B>sendMessage(ContainerMessage)</B></A> - 
Method in class org.eclipse.ecf.provider.generic.<A HREF="../org/eclipse/ecf/provider/generic/SOContainer.html" title="class in org.eclipse.ecf.provider.generic">SOContainer</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/generic/SOContainer.html#sendMessage(org.eclipse.ecf.core.identity.ID, org.eclipse.ecf.core.identity.ID, java.lang.Object)"><B>sendMessage(ID, ID, Object)</B></A> - 
Method in class org.eclipse.ecf.provider.generic.<A HREF="../org/eclipse/ecf/provider/generic/SOContainer.html" title="class in org.eclipse.ecf.provider.generic">SOContainer</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/generic/SOContext.html#sendMessage(org.eclipse.ecf.core.identity.ID, java.lang.Object)"><B>sendMessage(ID, Object)</B></A> - 
Method in class org.eclipse.ecf.provider.generic.<A HREF="../org/eclipse/ecf/provider/generic/SOContext.html" title="class in org.eclipse.ecf.provider.generic">SOContext</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/xmpp/XMPPContainer.html#sendMessage(org.eclipse.ecf.provider.generic.ContainerMessage)"><B>sendMessage(ContainerMessage)</B></A> - 
Method in class org.eclipse.ecf.provider.xmpp.<A HREF="../org/eclipse/ecf/provider/xmpp/XMPPContainer.html" title="class in org.eclipse.ecf.provider.xmpp">XMPPContainer</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/remoteservice/eventadmin/DistributedEventAdmin.html#sendMessage(org.osgi.service.event.Event)"><B>sendMessage(Event)</B></A> - 
Method in class org.eclipse.ecf.remoteservice.eventadmin.<A HREF="../org/eclipse/ecf/remoteservice/eventadmin/DistributedEventAdmin.html" title="class in org.eclipse.ecf.remoteservice.eventadmin">DistributedEventAdmin</A>
<DD>Send the event as a shared object message.
<DT><A HREF="../org/eclipse/ecf/presence/ui/chatroom/ChatRoomManagerView.html#sendMessageLine(java.lang.String)"><B>sendMessageLine(String)</B></A> - 
Method in class org.eclipse.ecf.presence.ui.chatroom.<A HREF="../org/eclipse/ecf/presence/ui/chatroom/ChatRoomManagerView.html" title="class in org.eclipse.ecf.presence.ui.chatroom">ChatRoomManagerView</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/comm/tcp/Client.html#sendObject(org.eclipse.ecf.core.identity.ID, java.io.Serializable)"><B>sendObject(ID, Serializable)</B></A> - 
Method in class org.eclipse.ecf.provider.comm.tcp.<A HREF="../org/eclipse/ecf/provider/comm/tcp/Client.html" title="class in org.eclipse.ecf.provider.comm.tcp">Client</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/presence/collab/ui/view/ViewShare.html#sendOpenViewRequest(java.lang.String, org.eclipse.ecf.core.identity.ID)"><B>sendOpenViewRequest(String, ID)</B></A> - 
Method in class org.eclipse.ecf.presence.collab.ui.view.<A HREF="../org/eclipse/ecf/presence/collab/ui/view/ViewShare.html" title="class in org.eclipse.ecf.presence.collab.ui.view">ViewShare</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/filetransfer/ISendFileTransferContainerAdapter.html#sendOutgoingRequest(org.eclipse.ecf.filetransfer.identity.IFileID, org.eclipse.ecf.filetransfer.IFileTransferInfo, org.eclipse.ecf.filetransfer.IFileTransferListener, java.util.Map)"><B>sendOutgoingRequest(IFileID, IFileTransferInfo, IFileTransferListener, Map)</B></A> - 
Method in interface org.eclipse.ecf.filetransfer.<A HREF="../org/eclipse/ecf/filetransfer/ISendFileTransferContainerAdapter.html" title="interface in org.eclipse.ecf.filetransfer">ISendFileTransferContainerAdapter</A>
<DD>Send request for outgoing file transfer.
<DT><A HREF="../org/eclipse/ecf/filetransfer/ISendFileTransferContainerAdapter.html#sendOutgoingRequest(org.eclipse.ecf.filetransfer.identity.IFileID, java.io.File, org.eclipse.ecf.filetransfer.IFileTransferListener, java.util.Map)"><B>sendOutgoingRequest(IFileID, File, IFileTransferListener, Map)</B></A> - 
Method in interface org.eclipse.ecf.filetransfer.<A HREF="../org/eclipse/ecf/filetransfer/ISendFileTransferContainerAdapter.html" title="interface in org.eclipse.ecf.filetransfer">ISendFileTransferContainerAdapter</A>
<DD>Send request for outgoing file transfer.
<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/outgoing/AbstractOutgoingFileTransfer.html#sendOutgoingRequest(org.eclipse.ecf.filetransfer.identity.IFileID, org.eclipse.ecf.filetransfer.IFileTransferInfo, org.eclipse.ecf.filetransfer.IFileTransferListener, java.util.Map)"><B>sendOutgoingRequest(IFileID, IFileTransferInfo, IFileTransferListener, Map)</B></A> - 
Method in class org.eclipse.ecf.provider.filetransfer.outgoing.<A HREF="../org/eclipse/ecf/provider/filetransfer/outgoing/AbstractOutgoingFileTransfer.html" title="class in org.eclipse.ecf.provider.filetransfer.outgoing">AbstractOutgoingFileTransfer</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/outgoing/AbstractOutgoingFileTransfer.html#sendOutgoingRequest(org.eclipse.ecf.filetransfer.identity.IFileID, java.io.File, org.eclipse.ecf.filetransfer.IFileTransferListener, java.util.Map)"><B>sendOutgoingRequest(IFileID, File, IFileTransferListener, Map)</B></A> - 
Method in class org.eclipse.ecf.provider.filetransfer.outgoing.<A HREF="../org/eclipse/ecf/provider/filetransfer/outgoing/AbstractOutgoingFileTransfer.html" title="class in org.eclipse.ecf.provider.filetransfer.outgoing">AbstractOutgoingFileTransfer</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/outgoing/MultiProtocolOutgoingAdapter.html#sendOutgoingRequest(org.eclipse.ecf.filetransfer.identity.IFileID, java.io.File, org.eclipse.ecf.filetransfer.IFileTransferListener, java.util.Map)"><B>sendOutgoingRequest(IFileID, File, IFileTransferListener, Map)</B></A> - 
Method in class org.eclipse.ecf.provider.filetransfer.outgoing.<A HREF="../org/eclipse/ecf/provider/filetransfer/outgoing/MultiProtocolOutgoingAdapter.html" title="class in org.eclipse.ecf.provider.filetransfer.outgoing">MultiProtocolOutgoingAdapter</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/outgoing/MultiProtocolOutgoingAdapter.html#sendOutgoingRequest(org.eclipse.ecf.filetransfer.identity.IFileID, org.eclipse.ecf.filetransfer.IFileTransferInfo, org.eclipse.ecf.filetransfer.IFileTransferListener, java.util.Map)"><B>sendOutgoingRequest(IFileID, IFileTransferInfo, IFileTransferListener, Map)</B></A> - 
Method in class org.eclipse.ecf.provider.filetransfer.outgoing.<A HREF="../org/eclipse/ecf/provider/filetransfer/outgoing/MultiProtocolOutgoingAdapter.html" title="class in org.eclipse.ecf.provider.filetransfer.outgoing">MultiProtocolOutgoingAdapter</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/presence/IPresenceSender.html#sendPresenceUpdate(org.eclipse.ecf.core.identity.ID, org.eclipse.ecf.presence.IPresence)"><B>sendPresenceUpdate(ID, IPresence)</B></A> - 
Method in interface org.eclipse.ecf.presence.<A HREF="../org/eclipse/ecf/presence/IPresenceSender.html" title="interface in org.eclipse.ecf.presence">IPresenceSender</A>
<DD>Send a presence update to a remote user
<DT><A HREF="../org/eclipse/ecf/provider/remoteservice/generic/RegistrySharedObject.html#sendRegistryUpdate(org.eclipse.ecf.core.identity.ID)"><B>sendRegistryUpdate(ID)</B></A> - 
Method in class org.eclipse.ecf.provider.remoteservice.generic.<A HREF="../org/eclipse/ecf/provider/remoteservice/generic/RegistrySharedObject.html" title="class in org.eclipse.ecf.provider.remoteservice.generic">RegistrySharedObject</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/remoteservice/generic/RegistrySharedObject.html#sendRegistryUpdate(org.eclipse.ecf.core.identity.ID, java.lang.Integer)"><B>sendRegistryUpdate(ID, Integer)</B></A> - 
Method in class org.eclipse.ecf.provider.remoteservice.generic.<A HREF="../org/eclipse/ecf/provider/remoteservice/generic/RegistrySharedObject.html" title="class in org.eclipse.ecf.provider.remoteservice.generic">RegistrySharedObject</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/remoteservice/generic/RegistrySharedObject.html#sendRegistryUpdateRequest(org.eclipse.ecf.core.identity.ID, java.lang.Integer)"><B>sendRegistryUpdateRequest(ID, Integer)</B></A> - 
Method in class org.eclipse.ecf.provider.remoteservice.generic.<A HREF="../org/eclipse/ecf/provider/remoteservice/generic/RegistrySharedObject.html" title="class in org.eclipse.ecf.provider.remoteservice.generic">RegistrySharedObject</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/remoteservice/generic/RegistrySharedObject.html#sendRegistryUpdateRequest()"><B>sendRegistryUpdateRequest()</B></A> - 
Method in class org.eclipse.ecf.provider.remoteservice.generic.<A HREF="../org/eclipse/ecf/provider/remoteservice/generic/RegistrySharedObject.html" title="class in org.eclipse.ecf.provider.remoteservice.generic">RegistrySharedObject</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/datashare/nio/NIOChannel.html#sendRequest(org.eclipse.ecf.core.identity.ID)"><B>sendRequest(ID)</B></A> - 
Method in class org.eclipse.ecf.provider.datashare.nio.<A HREF="../org/eclipse/ecf/provider/datashare/nio/NIOChannel.html" title="class in org.eclipse.ecf.provider.datashare.nio">NIOChannel</A>
<DD>Sends a request to the receiver to notify them that a socket is open and
 waiting for incoming connections to establish a channel connection.
<DT><A HREF="../org/eclipse/ecf/filetransfer/IRetrieveFileTransferContainerAdapter.html#sendRetrieveRequest(org.eclipse.ecf.filetransfer.identity.IFileID, org.eclipse.ecf.filetransfer.IFileTransferListener, java.util.Map)"><B>sendRetrieveRequest(IFileID, IFileTransferListener, Map)</B></A> - 
Method in interface org.eclipse.ecf.filetransfer.<A HREF="../org/eclipse/ecf/filetransfer/IRetrieveFileTransferContainerAdapter.html" title="interface in org.eclipse.ecf.filetransfer">IRetrieveFileTransferContainerAdapter</A>
<DD>Send request for transfer of a remote file to local file storage.
<DT><A HREF="../org/eclipse/ecf/filetransfer/IRetrieveFileTransferContainerAdapter.html#sendRetrieveRequest(org.eclipse.ecf.filetransfer.identity.IFileID, org.eclipse.ecf.filetransfer.IFileRangeSpecification, org.eclipse.ecf.filetransfer.IFileTransferListener, java.util.Map)"><B>sendRetrieveRequest(IFileID, IFileRangeSpecification, IFileTransferListener, Map)</B></A> - 
Method in interface org.eclipse.ecf.filetransfer.<A HREF="../org/eclipse/ecf/filetransfer/IRetrieveFileTransferContainerAdapter.html" title="interface in org.eclipse.ecf.filetransfer">IRetrieveFileTransferContainerAdapter</A>
<DD>Send request for transfer of a remote file to local file storage.
<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/retrieve/AbstractRetrieveFileTransfer.html#sendRetrieveRequest(org.eclipse.ecf.filetransfer.identity.IFileID, org.eclipse.ecf.filetransfer.IFileTransferListener, java.util.Map)"><B>sendRetrieveRequest(IFileID, IFileTransferListener, Map)</B></A> - 
Method in class org.eclipse.ecf.provider.filetransfer.retrieve.<A HREF="../org/eclipse/ecf/provider/filetransfer/retrieve/AbstractRetrieveFileTransfer.html" title="class in org.eclipse.ecf.provider.filetransfer.retrieve">AbstractRetrieveFileTransfer</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/retrieve/AbstractRetrieveFileTransfer.html#sendRetrieveRequest(org.eclipse.ecf.filetransfer.identity.IFileID, org.eclipse.ecf.filetransfer.IFileRangeSpecification, org.eclipse.ecf.filetransfer.IFileTransferListener, java.util.Map)"><B>sendRetrieveRequest(IFileID, IFileRangeSpecification, IFileTransferListener, Map)</B></A> - 
Method in class org.eclipse.ecf.provider.filetransfer.retrieve.<A HREF="../org/eclipse/ecf/provider/filetransfer/retrieve/AbstractRetrieveFileTransfer.html" title="class in org.eclipse.ecf.provider.filetransfer.retrieve">AbstractRetrieveFileTransfer</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/retrieve/MultiProtocolRetrieveAdapter.html#sendRetrieveRequest(org.eclipse.ecf.filetransfer.identity.IFileID, org.eclipse.ecf.filetransfer.IFileTransferListener, java.util.Map)"><B>sendRetrieveRequest(IFileID, IFileTransferListener, Map)</B></A> - 
Method in class org.eclipse.ecf.provider.filetransfer.retrieve.<A HREF="../org/eclipse/ecf/provider/filetransfer/retrieve/MultiProtocolRetrieveAdapter.html" title="class in org.eclipse.ecf.provider.filetransfer.retrieve">MultiProtocolRetrieveAdapter</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/retrieve/MultiProtocolRetrieveAdapter.html#sendRetrieveRequest(org.eclipse.ecf.filetransfer.identity.IFileID, org.eclipse.ecf.filetransfer.IFileRangeSpecification, org.eclipse.ecf.filetransfer.IFileTransferListener, java.util.Map)"><B>sendRetrieveRequest(IFileID, IFileRangeSpecification, IFileTransferListener, Map)</B></A> - 
Method in class org.eclipse.ecf.provider.filetransfer.retrieve.<A HREF="../org/eclipse/ecf/provider/filetransfer/retrieve/MultiProtocolRetrieveAdapter.html" title="class in org.eclipse.ecf.provider.filetransfer.retrieve">MultiProtocolRetrieveAdapter</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/presence/roster/IRosterSubscriptionSender.html#sendRosterAdd(java.lang.String, java.lang.String, java.lang.String[])"><B>sendRosterAdd(String, String, String[])</B></A> - 
Method in interface org.eclipse.ecf.presence.roster.<A HREF="../org/eclipse/ecf/presence/roster/IRosterSubscriptionSender.html" title="interface in org.eclipse.ecf.presence.roster">IRosterSubscriptionSender</A>
<DD>Send a request to add the userAccount (subscribe) to our roster.
<DT><A HREF="../org/eclipse/ecf/presence/roster/IRosterSubscriptionSender.html#sendRosterRemove(org.eclipse.ecf.core.identity.ID)"><B>sendRosterRemove(ID)</B></A> - 
Method in interface org.eclipse.ecf.presence.roster.<A HREF="../org/eclipse/ecf/presence/roster/IRosterSubscriptionSender.html" title="interface in org.eclipse.ecf.presence.roster">IRosterSubscriptionSender</A>
<DD>Send a request to remove a given userID (unsubscribe) from our roster.
<DT><A HREF="../org/eclipse/ecf/presence/collab/ui/console/ConsoleShare.html#sendShareConsoleSelection(java.lang.String, org.eclipse.ecf.core.identity.ID, java.lang.String)"><B>sendShareConsoleSelection(String, ID, String)</B></A> - 
Method in class org.eclipse.ecf.presence.collab.ui.console.<A HREF="../org/eclipse/ecf/presence/collab/ui/console/ConsoleShare.html" title="class in org.eclipse.ecf.presence.collab.ui.console">ConsoleShare</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/generic/ClientSOContainer.html#sendSharedObjectMessage(org.eclipse.ecf.core.identity.ID, org.eclipse.ecf.core.identity.ID, java.io.Serializable)"><B>sendSharedObjectMessage(ID, ID, Serializable)</B></A> - 
Method in class org.eclipse.ecf.provider.generic.<A HREF="../org/eclipse/ecf/provider/generic/ClientSOContainer.html" title="class in org.eclipse.ecf.provider.generic">ClientSOContainer</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/generic/SOContainer.html#sendSharedObjectMessage(org.eclipse.ecf.core.identity.ID, org.eclipse.ecf.core.identity.ID, java.io.Serializable)"><B>sendSharedObjectMessage(ID, ID, Serializable)</B></A> - 
Method in class org.eclipse.ecf.provider.generic.<A HREF="../org/eclipse/ecf/provider/generic/SOContainer.html" title="class in org.eclipse.ecf.provider.generic">SOContainer</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/sharedobject/BaseSharedObject.html#sendSharedObjectMsgTo(org.eclipse.ecf.core.identity.ID, org.eclipse.ecf.core.sharedobject.SharedObjectMsg)"><B>sendSharedObjectMsgTo(ID, SharedObjectMsg)</B></A> - 
Method in class org.eclipse.ecf.core.sharedobject.<A HREF="../org/eclipse/ecf/core/sharedobject/BaseSharedObject.html" title="class in org.eclipse.ecf.core.sharedobject">BaseSharedObject</A>
<DD>Send SharedObjectMessage to container with given ID.
<DT><A HREF="../org/eclipse/ecf/core/sharedobject/BaseSharedObject.html#sendSharedObjectMsgToPrimary(org.eclipse.ecf.core.sharedobject.SharedObjectMsg)"><B>sendSharedObjectMsgToPrimary(SharedObjectMsg)</B></A> - 
Method in class org.eclipse.ecf.core.sharedobject.<A HREF="../org/eclipse/ecf/core/sharedobject/BaseSharedObject.html" title="class in org.eclipse.ecf.core.sharedobject">BaseSharedObject</A>
<DD>Send SharedObjectMsg to this shared object's primary instance.
<DT><A HREF="../org/eclipse/ecf/core/sharedobject/BaseSharedObject.html#sendSharedObjectMsgToSelf(org.eclipse.ecf.core.sharedobject.SharedObjectMsg)"><B>sendSharedObjectMsgToSelf(SharedObjectMsg)</B></A> - 
Method in class org.eclipse.ecf.core.sharedobject.<A HREF="../org/eclipse/ecf/core/sharedobject/BaseSharedObject.html" title="class in org.eclipse.ecf.core.sharedobject">BaseSharedObject</A>
<DD>Send SharedObjectMsg to local shared object.
<DT><A HREF="../org/eclipse/ecf/presence/chatroom/IChatRoomAdminSender.html#sendSubjectChange(java.lang.String)"><B>sendSubjectChange(String)</B></A> - 
Method in interface org.eclipse.ecf.presence.chatroom.<A HREF="../org/eclipse/ecf/presence/chatroom/IChatRoomAdminSender.html" title="interface in org.eclipse.ecf.presence.chatroom">IChatRoomAdminSender</A>
<DD>Send chat room subject change.
<DT><A HREF="../org/eclipse/ecf/provider/comm/ISynchConnection.html#sendSynch(org.eclipse.ecf.core.identity.ID, byte[])"><B>sendSynch(ID, byte[])</B></A> - 
Method in interface org.eclipse.ecf.provider.comm.<A HREF="../org/eclipse/ecf/provider/comm/ISynchConnection.html" title="interface in org.eclipse.ecf.provider.comm">ISynchConnection</A>
<DD>Send data synchronously, blocking until a result is received
<DT><A HREF="../org/eclipse/ecf/provider/comm/tcp/Client.html#sendSynch(org.eclipse.ecf.core.identity.ID, java.lang.Object)"><B>sendSynch(ID, Object)</B></A> - 
Method in class org.eclipse.ecf.provider.comm.tcp.<A HREF="../org/eclipse/ecf/provider/comm/tcp/Client.html" title="class in org.eclipse.ecf.provider.comm.tcp">Client</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/comm/tcp/Client.html#sendSynch(org.eclipse.ecf.core.identity.ID, byte[])"><B>sendSynch(ID, byte[])</B></A> - 
Method in class org.eclipse.ecf.provider.comm.tcp.<A HREF="../org/eclipse/ecf/provider/comm/tcp/Client.html" title="class in org.eclipse.ecf.provider.comm.tcp">Client</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/telephony/call/ICallSession.html#sendTerminate()"><B>sendTerminate()</B></A> - 
Method in interface org.eclipse.ecf.telephony.call.<A HREF="../org/eclipse/ecf/telephony/call/ICallSession.html" title="interface in org.eclipse.ecf.telephony.call">ICallSession</A>
<DD>Send terminate message to given receiver
<DT><A HREF="../org/eclipse/ecf/provider/comm/tcp/Client.html#sendThread"><B>sendThread</B></A> - 
Variable in class org.eclipse.ecf.provider.comm.tcp.<A HREF="../org/eclipse/ecf/provider/comm/tcp/Client.html" title="class in org.eclipse.ecf.provider.comm.tcp">Client</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/dnssd/DnsSdDiscoveryAdvertiser.html#sendToServer(org.eclipse.ecf.discovery.IServiceInfo, boolean)"><B>sendToServer(IServiceInfo, boolean)</B></A> - 
Method in class org.eclipse.ecf.provider.dnssd.<A HREF="../org/eclipse/ecf/provider/dnssd/DnsSdDiscoveryAdvertiser.html" title="class in org.eclipse.ecf.provider.dnssd">DnsSdDiscoveryAdvertiser</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/presence/im/IChat.html#sendTypingMessage(boolean, java.lang.String)"><B>sendTypingMessage(boolean, String)</B></A> - 
Method in interface org.eclipse.ecf.presence.im.<A HREF="../org/eclipse/ecf/presence/im/IChat.html" title="interface in org.eclipse.ecf.presence.im">IChat</A>
<DD>Send typing message to a remote receiver.
<DT><A HREF="../org/eclipse/ecf/presence/im/ITypingMessageSender.html#sendTypingMessage(org.eclipse.ecf.core.identity.ID, boolean, java.lang.String)"><B>sendTypingMessage(ID, boolean, String)</B></A> - 
Method in interface org.eclipse.ecf.presence.im.<A HREF="../org/eclipse/ecf/presence/im/ITypingMessageSender.html" title="interface in org.eclipse.ecf.presence.im">ITypingMessageSender</A>
<DD>Send typing message to a remote receiver.
<DT><A HREF="../org/eclipse/ecf/provider/remoteservice/generic/RegistrySharedObject.html#sendUnregister(org.eclipse.ecf.provider.remoteservice.generic.RemoteServiceRegistrationImpl)"><B>sendUnregister(RemoteServiceRegistrationImpl)</B></A> - 
Method in class org.eclipse.ecf.provider.remoteservice.generic.<A HREF="../org/eclipse/ecf/provider/remoteservice/generic/RegistrySharedObject.html" title="class in org.eclipse.ecf.provider.remoteservice.generic">RegistrySharedObject</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/events/socket/AbstractSocketWrapper.html#sendUrgentData(int)"><B>sendUrgentData(int)</B></A> - 
Method in class org.eclipse.ecf.provider.filetransfer.events.socket.<A HREF="../org/eclipse/ecf/provider/filetransfer/events/socket/AbstractSocketWrapper.html" title="class in org.eclipse.ecf.provider.filetransfer.events.socket">AbstractSocketWrapper</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/presence/collab/ui/url/URLShare.html#sendURL(java.lang.String, org.eclipse.ecf.core.identity.ID, java.lang.String)"><B>sendURL(String, ID, String)</B></A> - 
Method in class org.eclipse.ecf.presence.collab.ui.url.<A HREF="../org/eclipse/ecf/presence/collab/ui/url/URLShare.html" title="class in org.eclipse.ecf.presence.collab.ui.url">URLShare</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/presence/ui/chatroom/MessageRenderer.html#SENT_COLOR"><B>SENT_COLOR</B></A> - 
Static variable in class org.eclipse.ecf.presence.ui.chatroom.<A HREF="../org/eclipse/ecf/presence/ui/chatroom/MessageRenderer.html" title="class in org.eclipse.ecf.presence.ui.chatroom">MessageRenderer</A>
<DD>Messages sent by local user
<DT><A HREF="../org/eclipse/ecf/presence/ui/chatroom/MessageRenderer.html#SENT_FONT"><B>SENT_FONT</B></A> - 
Static variable in class org.eclipse.ecf.presence.ui.chatroom.<A HREF="../org/eclipse/ecf/presence/ui/chatroom/MessageRenderer.html" title="class in org.eclipse.ecf.presence.ui.chatroom">MessageRenderer</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/osgi/services/discovery/ServicePublication.html#SEPARATOR"><B>SEPARATOR</B></A> - 
Static variable in interface org.eclipse.ecf.osgi.services.discovery.<A HREF="../org/eclipse/ecf/osgi/services/discovery/ServicePublication.html" title="interface in org.eclipse.ecf.osgi.services.discovery">ServicePublication</A>
<DD><B>Deprecated.</B>&nbsp;Separator constant for association of interface-specific values with the
 particular interface name.
<DT><A HREF="../org/eclipse/ecf/core/util/Trace.html#SEPARATOR_METHOD"><B>SEPARATOR_METHOD</B></A> - 
Static variable in class org.eclipse.ecf.core.util.<A HREF="../org/eclipse/ecf/core/util/Trace.html" title="class in org.eclipse.ecf.core.util">Trace</A>
<DD>Separator for methods.
<DT><A HREF="../org/eclipse/ecf/core/util/Trace.html#SEPARATOR_PARAMETER"><B>SEPARATOR_PARAMETER</B></A> - 
Static variable in class org.eclipse.ecf.core.util.<A HREF="../org/eclipse/ecf/core/util/Trace.html" title="class in org.eclipse.ecf.core.util">Trace</A>
<DD>Separator for parameters.
<DT><A HREF="../org/eclipse/ecf/core/util/Trace.html#SEPARATOR_RETURN"><B>SEPARATOR_RETURN</B></A> - 
Static variable in class org.eclipse.ecf.core.util.<A HREF="../org/eclipse/ecf/core/util/Trace.html" title="class in org.eclipse.ecf.core.util">Trace</A>
<DD>Separator for return values.
<DT><A HREF="../org/eclipse/ecf/core/util/Trace.html#SEPARATOR_SPACE"><B>SEPARATOR_SPACE</B></A> - 
Static variable in class org.eclipse.ecf.core.util.<A HREF="../org/eclipse/ecf/core/util/Trace.html" title="class in org.eclipse.ecf.core.util">Trace</A>
<DD>Separator containing a space.
<DT><A HREF="../org/eclipse/ecf/core/status/SerializableMultiStatus.html" title="class in org.eclipse.ecf.core.status"><B>SerializableMultiStatus</B></A> - Class in <A HREF="../org/eclipse/ecf/core/status/package-summary.html">org.eclipse.ecf.core.status</A><DD>&nbsp;<DT><A HREF="../org/eclipse/ecf/core/status/SerializableMultiStatus.html#SerializableMultiStatus(org.eclipse.core.runtime.IStatus)"><B>SerializableMultiStatus(IStatus)</B></A> - 
Constructor for class org.eclipse.ecf.core.status.<A HREF="../org/eclipse/ecf/core/status/SerializableMultiStatus.html" title="class in org.eclipse.ecf.core.status">SerializableMultiStatus</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/status/SerializableMultiStatus.html#SerializableMultiStatus(org.eclipse.core.runtime.MultiStatus)"><B>SerializableMultiStatus(MultiStatus)</B></A> - 
Constructor for class org.eclipse.ecf.core.status.<A HREF="../org/eclipse/ecf/core/status/SerializableMultiStatus.html" title="class in org.eclipse.ecf.core.status">SerializableMultiStatus</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/status/SerializableMultiStatus.html#SerializableMultiStatus(java.lang.String, int, org.eclipse.core.runtime.IStatus[], java.lang.String, java.lang.Throwable)"><B>SerializableMultiStatus(String, int, IStatus[], String, Throwable)</B></A> - 
Constructor for class org.eclipse.ecf.core.status.<A HREF="../org/eclipse/ecf/core/status/SerializableMultiStatus.html" title="class in org.eclipse.ecf.core.status">SerializableMultiStatus</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/status/SerializableMultiStatus.html#SerializableMultiStatus(java.lang.String, int, java.lang.String, java.lang.Throwable)"><B>SerializableMultiStatus(String, int, String, Throwable)</B></A> - 
Constructor for class org.eclipse.ecf.core.status.<A HREF="../org/eclipse/ecf/core/status/SerializableMultiStatus.html" title="class in org.eclipse.ecf.core.status">SerializableMultiStatus</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/status/SerializableStatus.html" title="class in org.eclipse.ecf.core.status"><B>SerializableStatus</B></A> - Class in <A HREF="../org/eclipse/ecf/core/status/package-summary.html">org.eclipse.ecf.core.status</A><DD>&nbsp;<DT><A HREF="../org/eclipse/ecf/core/status/SerializableStatus.html#SerializableStatus(org.eclipse.core.runtime.IStatus)"><B>SerializableStatus(IStatus)</B></A> - 
Constructor for class org.eclipse.ecf.core.status.<A HREF="../org/eclipse/ecf/core/status/SerializableStatus.html" title="class in org.eclipse.ecf.core.status">SerializableStatus</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/status/SerializableStatus.html#SerializableStatus(int, java.lang.String, int, java.lang.String, java.lang.Throwable)"><B>SerializableStatus(int, String, int, String, Throwable)</B></A> - 
Constructor for class org.eclipse.ecf.core.status.<A HREF="../org/eclipse/ecf/core/status/SerializableStatus.html" title="class in org.eclipse.ecf.core.status">SerializableStatus</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/status/SerializableStatus.html#SerializableStatus(int, java.lang.String, java.lang.String, java.lang.Throwable)"><B>SerializableStatus(int, String, String, Throwable)</B></A> - 
Constructor for class org.eclipse.ecf.core.status.<A HREF="../org/eclipse/ecf/core/status/SerializableStatus.html" title="class in org.eclipse.ecf.core.status">SerializableStatus</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/status/SerializableStatus.html#SerializableStatus(int, java.lang.String, java.lang.String)"><B>SerializableStatus(int, String, String)</B></A> - 
Constructor for class org.eclipse.ecf.core.status.<A HREF="../org/eclipse/ecf/core/status/SerializableStatus.html" title="class in org.eclipse.ecf.core.status">SerializableStatus</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/sync/SerializationException.html" title="class in org.eclipse.ecf.sync"><B>SerializationException</B></A> - Exception in <A HREF="../org/eclipse/ecf/sync/package-summary.html">org.eclipse.ecf.sync</A><DD>Exception for serialization problems.<DT><A HREF="../org/eclipse/ecf/sync/SerializationException.html#SerializationException(java.lang.String)"><B>SerializationException(String)</B></A> - 
Constructor for exception org.eclipse.ecf.sync.<A HREF="../org/eclipse/ecf/sync/SerializationException.html" title="class in org.eclipse.ecf.sync">SerializationException</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/sync/SerializationException.html#SerializationException(java.lang.Throwable)"><B>SerializationException(Throwable)</B></A> - 
Constructor for exception org.eclipse.ecf.sync.<A HREF="../org/eclipse/ecf/sync/SerializationException.html" title="class in org.eclipse.ecf.sync">SerializationException</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/sync/SerializationException.html#SerializationException(java.lang.String, java.lang.Throwable)"><B>SerializationException(String, Throwable)</B></A> - 
Constructor for exception org.eclipse.ecf.sync.<A HREF="../org/eclipse/ecf/sync/SerializationException.html" title="class in org.eclipse.ecf.sync">SerializationException</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/sync/SerializationException.html#SerializationException(org.eclipse.core.runtime.IStatus)"><B>SerializationException(IStatus)</B></A> - 
Constructor for exception org.eclipse.ecf.sync.<A HREF="../org/eclipse/ecf/sync/SerializationException.html" title="class in org.eclipse.ecf.sync">SerializationException</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/docshare/messages/Message.html#serialize()"><B>serialize()</B></A> - 
Method in class org.eclipse.ecf.docshare.messages.<A HREF="../org/eclipse/ecf/docshare/messages/Message.html" title="class in org.eclipse.ecf.docshare.messages">Message</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/presence/collab/ui/AbstractCollabShare.html#serialize(java.lang.Object)"><B>serialize(Object)</B></A> - 
Method in class org.eclipse.ecf.presence.collab.ui.<A HREF="../org/eclipse/ecf/presence/collab/ui/AbstractCollabShare.html" title="class in org.eclipse.ecf.presence.collab.ui">AbstractCollabShare</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/generic/SOContainer.html#serialize(java.io.Serializable)"><B>serialize(Serializable)</B></A> - 
Static method in class org.eclipse.ecf.provider.generic.<A HREF="../org/eclipse/ecf/provider/generic/SOContainer.html" title="class in org.eclipse.ecf.provider.generic">SOContainer</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/sync/doc/DocumentChangeMessage.html#serialize()"><B>serialize()</B></A> - 
Method in class org.eclipse.ecf.sync.doc.<A HREF="../org/eclipse/ecf/sync/doc/DocumentChangeMessage.html" title="class in org.eclipse.ecf.sync.doc">DocumentChangeMessage</A>
<DD>Serialize the current message
<DT><A HREF="../org/eclipse/ecf/sync/IModelChangeMessage.html#serialize()"><B>serialize()</B></A> - 
Method in interface org.eclipse.ecf.sync.<A HREF="../org/eclipse/ecf/sync/IModelChangeMessage.html" title="interface in org.eclipse.ecf.sync">IModelChangeMessage</A>
<DD>Serialize this message to byte [].
<DT><A HREF="../org/eclipse/ecf/core/sharedobject/util/ISharedObjectMessageSerializer.html#serializeMessage(org.eclipse.ecf.core.identity.ID, java.lang.Object)"><B>serializeMessage(ID, Object)</B></A> - 
Method in interface org.eclipse.ecf.core.sharedobject.util.<A HREF="../org/eclipse/ecf/core/sharedobject/util/ISharedObjectMessageSerializer.html" title="interface in org.eclipse.ecf.core.sharedobject.util">ISharedObjectMessageSerializer</A>
<DD>
 Serialize an object to byte array.
<DT><A HREF="../org/eclipse/ecf/remoteservice/client/AbstractClientContainer.html#serializeParameter(java.lang.String, org.eclipse.ecf.remoteservice.IRemoteCall, org.eclipse.ecf.remoteservice.client.IRemoteCallable, org.eclipse.ecf.remoteservice.client.IRemoteCallParameter, java.lang.Object)"><B>serializeParameter(String, IRemoteCall, IRemoteCallable, IRemoteCallParameter, Object)</B></A> - 
Method in class org.eclipse.ecf.remoteservice.client.<A HREF="../org/eclipse/ecf/remoteservice/client/AbstractClientContainer.html" title="class in org.eclipse.ecf.remoteservice.client">AbstractClientContainer</A>
<DD>Serialze the parameter using the container's parameterSerializer.
<DT><A HREF="../org/eclipse/ecf/remoteservice/client/IRemoteCallParameterSerializer.html#serializeParameter(java.lang.String, org.eclipse.ecf.remoteservice.IRemoteCall, org.eclipse.ecf.remoteservice.client.IRemoteCallable, org.eclipse.ecf.remoteservice.client.IRemoteCallParameter, java.lang.Object)"><B>serializeParameter(String, IRemoteCall, IRemoteCallable, IRemoteCallParameter, Object)</B></A> - 
Method in interface org.eclipse.ecf.remoteservice.client.<A HREF="../org/eclipse/ecf/remoteservice/client/IRemoteCallParameterSerializer.html" title="interface in org.eclipse.ecf.remoteservice.client">IRemoteCallParameterSerializer</A>
<DD>Serialize a remote call parameter.
<DT><A HREF="../org/eclipse/ecf/remoteservice/client/StringParameterSerializer.html#serializeParameter(java.lang.String, org.eclipse.ecf.remoteservice.IRemoteCall, org.eclipse.ecf.remoteservice.client.IRemoteCallable, org.eclipse.ecf.remoteservice.client.IRemoteCallParameter, java.lang.Object)"><B>serializeParameter(String, IRemoteCall, IRemoteCallable, IRemoteCallParameter, Object)</B></A> - 
Method in class org.eclipse.ecf.remoteservice.client.<A HREF="../org/eclipse/ecf/remoteservice/client/StringParameterSerializer.html" title="class in org.eclipse.ecf.remoteservice.client">StringParameterSerializer</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/generic/SOContainer.html#serializeSharedObjectMessage(org.eclipse.ecf.core.identity.ID, java.lang.Object)"><B>serializeSharedObjectMessage(ID, Object)</B></A> - 
Method in class org.eclipse.ecf.provider.generic.<A HREF="../org/eclipse/ecf/provider/generic/SOContainer.html" title="class in org.eclipse.ecf.provider.generic">SOContainer</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/telephony/call/CallSessionState.html#serialVersionUID"><B>serialVersionUID</B></A> - 
Static variable in class org.eclipse.ecf.telephony.call.<A HREF="../org/eclipse/ecf/telephony/call/CallSessionState.html" title="class in org.eclipse.ecf.telephony.call">CallSessionState</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/ContainerTypeDescription.html#server"><B>server</B></A> - 
Variable in class org.eclipse.ecf.core.<A HREF="../org/eclipse/ecf/core/ContainerTypeDescription.html" title="class in org.eclipse.ecf.core">ContainerTypeDescription</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/comm/tcp/Server.html" title="class in org.eclipse.ecf.provider.comm.tcp"><B>Server</B></A> - Class in <A HREF="../org/eclipse/ecf/provider/comm/tcp/package-summary.html">org.eclipse.ecf.provider.comm.tcp</A><DD>&nbsp;<DT><A HREF="../org/eclipse/ecf/provider/comm/tcp/Server.html#Server(java.lang.ThreadGroup, int, org.eclipse.ecf.provider.comm.tcp.ISocketAcceptHandler)"><B>Server(ThreadGroup, int, ISocketAcceptHandler)</B></A> - 
Constructor for class org.eclipse.ecf.provider.comm.tcp.<A HREF="../org/eclipse/ecf/provider/comm/tcp/Server.html" title="class in org.eclipse.ecf.provider.comm.tcp">Server</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/comm/tcp/Server.html#Server(int, org.eclipse.ecf.provider.comm.tcp.ISocketAcceptHandler)"><B>Server(int, ISocketAcceptHandler)</B></A> - 
Constructor for class org.eclipse.ecf.provider.comm.tcp.<A HREF="../org/eclipse/ecf/provider/comm/tcp/Server.html" title="class in org.eclipse.ecf.provider.comm.tcp">Server</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/server/generic/app/ServerConfigParser.html#SERVER_ELEMENT"><B>SERVER_ELEMENT</B></A> - 
Static variable in class org.eclipse.ecf.server.generic.app.<A HREF="../org/eclipse/ecf/server/generic/app/ServerConfigParser.html" title="class in org.eclipse.ecf.server.generic.app">ServerConfigParser</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/zookeeper/core/DefaultDiscoveryConfig.html#SERVER_PORT_DEFAULT"><B>SERVER_PORT_DEFAULT</B></A> - 
Static variable in class org.eclipse.ecf.provider.zookeeper.core.<A HREF="../org/eclipse/ecf/provider/zookeeper/core/DefaultDiscoveryConfig.html" title="class in org.eclipse.ecf.provider.zookeeper.core">DefaultDiscoveryConfig</A>
<DD>The server port default.
<DT><A HREF="../org/eclipse/ecf/server/generic/app/ServerApplication.html" title="class in org.eclipse.ecf.server.generic.app"><B>ServerApplication</B></A> - Class in <A HREF="../org/eclipse/ecf/server/generic/app/package-summary.html">org.eclipse.ecf.server.generic.app</A><DD>An ECF server container implementation that runs as an application.<DT><A HREF="../org/eclipse/ecf/server/generic/app/ServerApplication.html#ServerApplication()"><B>ServerApplication()</B></A> - 
Constructor for class org.eclipse.ecf.server.generic.app.<A HREF="../org/eclipse/ecf/server/generic/app/ServerApplication.html" title="class in org.eclipse.ecf.server.generic.app">ServerApplication</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/server/generic/app/ServerConfigParser.html" title="class in org.eclipse.ecf.server.generic.app"><B>ServerConfigParser</B></A> - Class in <A HREF="../org/eclipse/ecf/server/generic/app/package-summary.html">org.eclipse.ecf.server.generic.app</A><DD>&nbsp;<DT><A HREF="../org/eclipse/ecf/server/generic/app/ServerConfigParser.html#ServerConfigParser()"><B>ServerConfigParser()</B></A> - 
Constructor for class org.eclipse.ecf.server.generic.app.<A HREF="../org/eclipse/ecf/server/generic/app/ServerConfigParser.html" title="class in org.eclipse.ecf.server.generic.app">ServerConfigParser</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/server/generic/AbstractGenericServer.html#serverGroup"><B>serverGroup</B></A> - 
Variable in class org.eclipse.ecf.server.generic.<A HREF="../org/eclipse/ecf/server/generic/AbstractGenericServer.html" title="class in org.eclipse.ecf.server.generic">AbstractGenericServer</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/server/generic/app/AbstractGenericServerApplication.html#serverGroups"><B>serverGroups</B></A> - 
Variable in class org.eclipse.ecf.server.generic.app.<A HREF="../org/eclipse/ecf/server/generic/app/AbstractGenericServerApplication.html" title="class in org.eclipse.ecf.server.generic.app">AbstractGenericServerApplication</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/server/generic/ServerManager.html" title="class in org.eclipse.ecf.server.generic"><B>ServerManager</B></A> - Class in <A HREF="../org/eclipse/ecf/server/generic/package-summary.html">org.eclipse.ecf.server.generic</A><DD>&nbsp;<DT><A HREF="../org/eclipse/ecf/server/generic/ServerManager.html#ServerManager()"><B>ServerManager()</B></A> - 
Constructor for class org.eclipse.ecf.server.generic.<A HREF="../org/eclipse/ecf/server/generic/ServerManager.html" title="class in org.eclipse.ecf.server.generic">ServerManager</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/server/generic/app/AbstractGenericServerApplication.html#serverName"><B>serverName</B></A> - 
Variable in class org.eclipse.ecf.server.generic.app.<A HREF="../org/eclipse/ecf/server/generic/app/AbstractGenericServerApplication.html" title="class in org.eclipse.ecf.server.generic.app">AbstractGenericServerApplication</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/generic/ServerSOContainer.html" title="class in org.eclipse.ecf.provider.generic"><B>ServerSOContainer</B></A> - Class in <A HREF="../org/eclipse/ecf/provider/generic/package-summary.html">org.eclipse.ecf.provider.generic</A><DD>&nbsp;<DT><A HREF="../org/eclipse/ecf/provider/generic/ServerSOContainer.html#ServerSOContainer(org.eclipse.ecf.core.sharedobject.ISharedObjectContainerConfig)"><B>ServerSOContainer(ISharedObjectContainerConfig)</B></A> - 
Constructor for class org.eclipse.ecf.provider.generic.<A HREF="../org/eclipse/ecf/provider/generic/ServerSOContainer.html" title="class in org.eclipse.ecf.provider.generic">ServerSOContainer</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/remoteservice/Constants.html#SERVICE_CONNECT_ID"><B>SERVICE_CONNECT_ID</B></A> - 
Static variable in interface org.eclipse.ecf.remoteservice.<A HREF="../org/eclipse/ecf/remoteservice/Constants.html" title="interface in org.eclipse.ecf.remoteservice">Constants</A>
<DD>Discovery service property to specify value for creating a connect id.
<DT><A HREF="../org/eclipse/ecf/remoteservice/Constants.html#SERVICE_CONNECT_ID_NAMESPACE"><B>SERVICE_CONNECT_ID_NAMESPACE</B></A> - 
Static variable in interface org.eclipse.ecf.remoteservice.<A HREF="../org/eclipse/ecf/remoteservice/Constants.html" title="interface in org.eclipse.ecf.remoteservice">Constants</A>
<DD>Discovery service property to specify a namespace name for creating a connect id.
<DT><A HREF="../org/eclipse/ecf/remoteservice/Constants.html#SERVICE_CONTAINER_FACTORY_NAME"><B>SERVICE_CONTAINER_FACTORY_NAME</B></A> - 
Static variable in interface org.eclipse.ecf.remoteservice.<A HREF="../org/eclipse/ecf/remoteservice/Constants.html" title="interface in org.eclipse.ecf.remoteservice">Constants</A>
<DD>Remote service property that defines the container factory name.
<DT><A HREF="../org/eclipse/ecf/remoteservice/Constants.html#SERVICE_CONTAINER_ID"><B>SERVICE_CONTAINER_ID</B></A> - 
Static variable in interface org.eclipse.ecf.remoteservice.<A HREF="../org/eclipse/ecf/remoteservice/Constants.html" title="interface in org.eclipse.ecf.remoteservice">Constants</A>
<DD>Remote service property that defines the remote service container ID.
<DT><A HREF="../org/eclipse/ecf/remoteservice/Constants.html#SERVICE_CONTAINER_ID_FACTORY"><B>SERVICE_CONTAINER_ID_FACTORY</B></A> - 
Static variable in interface org.eclipse.ecf.remoteservice.<A HREF="../org/eclipse/ecf/remoteservice/Constants.html" title="interface in org.eclipse.ecf.remoteservice">Constants</A>
<DD>Service property that defines the remote service container ID factory name.
<DT><A HREF="../org/eclipse/ecf/remoteservice/Constants.html#SERVICE_CONTAINER_TARGET"><B>SERVICE_CONTAINER_TARGET</B></A> - 
Static variable in interface org.eclipse.ecf.remoteservice.<A HREF="../org/eclipse/ecf/remoteservice/Constants.html" title="interface in org.eclipse.ecf.remoteservice">Constants</A>
<DD>Service property that defines the container target for connection.
<DT><A HREF="../org/eclipse/ecf/remoteservice/Constants.html#SERVICE_DESCRIPTION"><B>SERVICE_DESCRIPTION</B></A> - 
Static variable in interface org.eclipse.ecf.remoteservice.<A HREF="../org/eclipse/ecf/remoteservice/Constants.html" title="interface in org.eclipse.ecf.remoteservice">Constants</A>
<DD>Service property (named &quot;remoteservice.description&quot;)
 identifying a service's description.
<DT><A HREF="../org/eclipse/ecf/osgi/services/distribution/IDistributionConstants.html#SERVICE_EXPORTED_CONFIGS"><B>SERVICE_EXPORTED_CONFIGS</B></A> - 
Static variable in interface org.eclipse.ecf.osgi.services.distribution.<A HREF="../org/eclipse/ecf/osgi/services/distribution/IDistributionConstants.html" title="interface in org.eclipse.ecf.osgi.services.distribution">IDistributionConstants</A>
<DD>
 <b>Type</b>: String+
<DT><A HREF="../org/eclipse/ecf/osgi/services/distribution/IDistributionConstants.html#SERVICE_EXPORTED_CONTAINER_CONNECT_CONTEXT"><B>SERVICE_EXPORTED_CONTAINER_CONNECT_CONTEXT</B></A> - 
Static variable in interface org.eclipse.ecf.osgi.services.distribution.<A HREF="../org/eclipse/ecf/osgi/services/distribution/IDistributionConstants.html" title="interface in org.eclipse.ecf.osgi.services.distribution">IDistributionConstants</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/osgi/services/distribution/IDistributionConstants.html#SERVICE_EXPORTED_CONTAINER_CONNECT_TARGET"><B>SERVICE_EXPORTED_CONTAINER_CONNECT_TARGET</B></A> - 
Static variable in interface org.eclipse.ecf.osgi.services.distribution.<A HREF="../org/eclipse/ecf/osgi/services/distribution/IDistributionConstants.html" title="interface in org.eclipse.ecf.osgi.services.distribution">IDistributionConstants</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/osgi/services/distribution/IDistributionConstants.html#SERVICE_EXPORTED_CONTAINER_FACTORY_ARGUMENTS"><B>SERVICE_EXPORTED_CONTAINER_FACTORY_ARGUMENTS</B></A> - 
Static variable in interface org.eclipse.ecf.osgi.services.distribution.<A HREF="../org/eclipse/ecf/osgi/services/distribution/IDistributionConstants.html" title="interface in org.eclipse.ecf.osgi.services.distribution">IDistributionConstants</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/osgi/services/distribution/IDistributionConstants.html#SERVICE_EXPORTED_CONTAINER_ID"><B>SERVICE_EXPORTED_CONTAINER_ID</B></A> - 
Static variable in interface org.eclipse.ecf.osgi.services.distribution.<A HREF="../org/eclipse/ecf/osgi/services/distribution/IDistributionConstants.html" title="interface in org.eclipse.ecf.osgi.services.distribution">IDistributionConstants</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/osgi/services/distribution/IDistributionConstants.html#SERVICE_EXPORTED_INTENTS"><B>SERVICE_EXPORTED_INTENTS</B></A> - 
Static variable in interface org.eclipse.ecf.osgi.services.distribution.<A HREF="../org/eclipse/ecf/osgi/services/distribution/IDistributionConstants.html" title="interface in org.eclipse.ecf.osgi.services.distribution">IDistributionConstants</A>
<DD>
 <b>Type</b>: String+
<DT><A HREF="../org/eclipse/ecf/osgi/services/distribution/IDistributionConstants.html#SERVICE_EXPORTED_INTENTS_EXTRA"><B>SERVICE_EXPORTED_INTENTS_EXTRA</B></A> - 
Static variable in interface org.eclipse.ecf.osgi.services.distribution.<A HREF="../org/eclipse/ecf/osgi/services/distribution/IDistributionConstants.html" title="interface in org.eclipse.ecf.osgi.services.distribution">IDistributionConstants</A>
<DD>
 <b>Type</b>: String+
<DT><A HREF="../org/eclipse/ecf/osgi/services/distribution/IDistributionConstants.html#SERVICE_EXPORTED_INTERFACES"><B>SERVICE_EXPORTED_INTERFACES</B></A> - 
Static variable in interface org.eclipse.ecf.osgi.services.distribution.<A HREF="../org/eclipse/ecf/osgi/services/distribution/IDistributionConstants.html" title="interface in org.eclipse.ecf.osgi.services.distribution">IDistributionConstants</A>
<DD>
 <b>Type</b>: String+
<DT><A HREF="../org/eclipse/ecf/osgi/services/distribution/IDistributionConstants.html#SERVICE_EXPORTED_INTERFACES_WILDCARD"><B>SERVICE_EXPORTED_INTERFACES_WILDCARD</B></A> - 
Static variable in interface org.eclipse.ecf.osgi.services.distribution.<A HREF="../org/eclipse/ecf/osgi/services/distribution/IDistributionConstants.html" title="interface in org.eclipse.ecf.osgi.services.distribution">IDistributionConstants</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/remoteservice/Constants.html#SERVICE_FILTER_PROPERTY"><B>SERVICE_FILTER_PROPERTY</B></A> - 
Static variable in interface org.eclipse.ecf.remoteservice.<A HREF="../org/eclipse/ecf/remoteservice/Constants.html" title="interface in org.eclipse.ecf.remoteservice">Constants</A>
<DD>Discovery service property for specifying the service lookup filter for
 client service lookup via 
 remoteServicesContainerAdapter.getRemoteServiceReferences(ID [] idFilter, String clazz, String filter).
<DT><A HREF="../org/eclipse/ecf/remoteservice/Constants.html#SERVICE_ID"><B>SERVICE_ID</B></A> - 
Static variable in interface org.eclipse.ecf.remoteservice.<A HREF="../org/eclipse/ecf/remoteservice/Constants.html" title="interface in org.eclipse.ecf.remoteservice">Constants</A>
<DD>Remote service property (named &quot;ecf.rsvc.id&quot;) identifying a
 service's registration number (of type <code>java.lang.Long</code>).
<DT><A HREF="../org/eclipse/ecf/remoteservice/Constants.html#SERVICE_IDFILTER_ID"><B>SERVICE_IDFILTER_ID</B></A> - 
Static variable in interface org.eclipse.ecf.remoteservice.<A HREF="../org/eclipse/ecf/remoteservice/Constants.html" title="interface in org.eclipse.ecf.remoteservice">Constants</A>
<DD>Discovery service property for a 'remotesvcs' discovery type.
<DT><A HREF="../org/eclipse/ecf/remoteservice/Constants.html#SERVICE_IDFILTER_NAMESPACE"><B>SERVICE_IDFILTER_NAMESPACE</B></A> - 
Static variable in interface org.eclipse.ecf.remoteservice.<A HREF="../org/eclipse/ecf/remoteservice/Constants.html" title="interface in org.eclipse.ecf.remoteservice">Constants</A>
<DD>Discovery service property to specify a namespace name for creating a target service ID.
<DT><A HREF="../org/eclipse/ecf/osgi/services/distribution/IDistributionConstants.html#SERVICE_IMPORTED"><B>SERVICE_IMPORTED</B></A> - 
Static variable in interface org.eclipse.ecf.osgi.services.distribution.<A HREF="../org/eclipse/ecf/osgi/services/distribution/IDistributionConstants.html" title="interface in org.eclipse.ecf.osgi.services.distribution">IDistributionConstants</A>
<DD>
 <b>Type</b>: *
<DT><A HREF="../org/eclipse/ecf/osgi/services/distribution/IDistributionConstants.html#SERVICE_IMPORTED_CONFIGS"><B>SERVICE_IMPORTED_CONFIGS</B></A> - 
Static variable in interface org.eclipse.ecf.osgi.services.distribution.<A HREF="../org/eclipse/ecf/osgi/services/distribution/IDistributionConstants.html" title="interface in org.eclipse.ecf.osgi.services.distribution">IDistributionConstants</A>
<DD>
 <b>Type</b>: String+
<DT><A HREF="../org/eclipse/ecf/osgi/services/distribution/IDistributionConstants.html#SERVICE_INTENTS"><B>SERVICE_INTENTS</B></A> - 
Static variable in interface org.eclipse.ecf.osgi.services.distribution.<A HREF="../org/eclipse/ecf/osgi/services/distribution/IDistributionConstants.html" title="interface in org.eclipse.ecf.osgi.services.distribution">IDistributionConstants</A>
<DD>
 <b>Type</b>: String+
<DT><A HREF="../org/eclipse/ecf/osgi/services/discovery/ServicePublication.html#SERVICE_INTERFACE_NAME"><B>SERVICE_INTERFACE_NAME</B></A> - 
Static variable in interface org.eclipse.ecf.osgi.services.discovery.<A HREF="../org/eclipse/ecf/osgi/services/discovery/ServicePublication.html" title="interface in org.eclipse.ecf.osgi.services.discovery">ServicePublication</A>
<DD><B>Deprecated.</B>&nbsp;Mandatory ServiceRegistration property which contains a collection of
 full qualified interface names offered by the advertised service
 endpoint.
<DT><A HREF="../org/eclipse/ecf/osgi/services/discovery/ServicePublication.html#SERVICE_INTERFACE_VERSION"><B>SERVICE_INTERFACE_VERSION</B></A> - 
Static variable in interface org.eclipse.ecf.osgi.services.discovery.<A HREF="../org/eclipse/ecf/osgi/services/discovery/ServicePublication.html" title="interface in org.eclipse.ecf.osgi.services.discovery">ServicePublication</A>
<DD><B>Deprecated.</B>&nbsp;Optional ServiceRegistration property which contains a collection of
 interface names with their associated version attributes separated by
 <A HREF="../org/eclipse/ecf/osgi/services/discovery/ServicePublication.html#SEPARATOR"><CODE>ServicePublication.SEPARATOR</CODE></A> e.g.
<DT><A HREF="../org/eclipse/ecf/osgi/services/discovery/RemoteServicePublication.html#SERVICE_NAME"><B>SERVICE_NAME</B></A> - 
Static variable in interface org.eclipse.ecf.osgi.services.discovery.<A HREF="../org/eclipse/ecf/osgi/services/discovery/RemoteServicePublication.html" title="interface in org.eclipse.ecf.osgi.services.discovery">RemoteServicePublication</A>
<DD>Discovery service name property.
<DT><A HREF="../org/eclipse/ecf/remoteservice/Constants.html#SERVICE_NAMESPACE"><B>SERVICE_NAMESPACE</B></A> - 
Static variable in interface org.eclipse.ecf.remoteservice.<A HREF="../org/eclipse/ecf/remoteservice/Constants.html" title="interface in org.eclipse.ecf.remoteservice">Constants</A>
<DD>Discovery service property specifying the expected namespace name for corresponding
 to remoteServiceContainerAdapter.getRemoteServicesNamespace()
<DT><A HREF="../org/eclipse/ecf/remoteservice/Constants.html#SERVICE_OBJECTCLASS"><B>SERVICE_OBJECTCLASS</B></A> - 
Static variable in interface org.eclipse.ecf.remoteservice.<A HREF="../org/eclipse/ecf/remoteservice/Constants.html" title="interface in org.eclipse.ecf.remoteservice">Constants</A>
<DD>Discovery Service property specifying the clazz paramter in  
 remoteServiceContainerAdapter.getRemoteServiceReferences(ID [] idFilter, String clazz, String filter);
<DT><A HREF="../org/eclipse/ecf/osgi/services/distribution/IDistributionConstants.html#SERVICE_PID"><B>SERVICE_PID</B></A> - 
Static variable in interface org.eclipse.ecf.osgi.services.distribution.<A HREF="../org/eclipse/ecf/osgi/services/distribution/IDistributionConstants.html" title="interface in org.eclipse.ecf.osgi.services.distribution">IDistributionConstants</A>
<DD>
 <b>Type</b>: String+
<DT><A HREF="../org/eclipse/ecf/osgi/services/discovery/ServicePublication.html#SERVICE_PROPERTIES"><B>SERVICE_PROPERTIES</B></A> - 
Static variable in interface org.eclipse.ecf.osgi.services.discovery.<A HREF="../org/eclipse/ecf/osgi/services/discovery/ServicePublication.html" title="interface in org.eclipse.ecf.osgi.services.discovery">ServicePublication</A>
<DD><B>Deprecated.</B>&nbsp;Optional ServiceRegistration property which contains a map of properties
 of the published service.
<DT><A HREF="../org/eclipse/ecf/osgi/services/discovery/RemoteServicePublication.html#SERVICE_PROTOCOL"><B>SERVICE_PROTOCOL</B></A> - 
Static variable in interface org.eclipse.ecf.osgi.services.discovery.<A HREF="../org/eclipse/ecf/osgi/services/discovery/RemoteServicePublication.html" title="interface in org.eclipse.ecf.osgi.services.discovery">RemoteServicePublication</A>
<DD>Discovery protocol property.
<DT><A HREF="../org/eclipse/ecf/remoteservice/Constants.html#SERVICE_PROXY_CONTAINER_ID"><B>SERVICE_PROXY_CONTAINER_ID</B></A> - 
Static variable in interface org.eclipse.ecf.remoteservice.<A HREF="../org/eclipse/ecf/remoteservice/Constants.html" title="interface in org.eclipse.ecf.remoteservice">Constants</A>
<DD>Remote service property that defines the remote service container ID.
<DT><A HREF="../org/eclipse/ecf/remoteservice/Constants.html#SERVICE_RANKING"><B>SERVICE_RANKING</B></A> - 
Static variable in interface org.eclipse.ecf.remoteservice.<A HREF="../org/eclipse/ecf/remoteservice/Constants.html" title="interface in org.eclipse.ecf.remoteservice">Constants</A>
<DD>Service property (named &quot;remote.service.ranking&quot;) identifying a
 service's ranking number (of type <code>java.lang.Integer</code>).
<DT><A HREF="../org/eclipse/ecf/remoteservice/Constants.html#SERVICE_REGISTER_PROXY"><B>SERVICE_REGISTER_PROXY</B></A> - 
Static variable in interface org.eclipse.ecf.remoteservice.<A HREF="../org/eclipse/ecf/remoteservice/Constants.html" title="interface in org.eclipse.ecf.remoteservice">Constants</A>
<DD>Service property used on service registration to indicate that a service proxy 
 should be created rather than using the given service object (which may be null
 when this service property is set).
<DT><A HREF="../org/eclipse/ecf/remoteservice/Constants.html#SERVICE_REGISTRATION_TARGETS"><B>SERVICE_REGISTRATION_TARGETS</B></A> - 
Static variable in interface org.eclipse.ecf.remoteservice.<A HREF="../org/eclipse/ecf/remoteservice/Constants.html" title="interface in org.eclipse.ecf.remoteservice">Constants</A>
<DD>Service property (named &quot;remoteservice.description&quot;)
 identifying a a registration's target for receiving the service.
<DT><A HREF="../org/eclipse/ecf/osgi/services/discovery/RemoteServicePublication.html#SERVICE_TYPE"><B>SERVICE_TYPE</B></A> - 
Static variable in interface org.eclipse.ecf.osgi.services.discovery.<A HREF="../org/eclipse/ecf/osgi/services/discovery/RemoteServicePublication.html" title="interface in org.eclipse.ecf.osgi.services.discovery">RemoteServicePublication</A>
<DD>Discovery OSGi Service Type for publishing/discovering osgiservices
<DT><A HREF="../org/eclipse/ecf/telephony/call/CallSessionErrorDetails.html#SERVICE_UNAVAILABLE"><B>SERVICE_UNAVAILABLE</B></A> - 
Static variable in class org.eclipse.ecf.telephony.call.<A HREF="../org/eclipse/ecf/telephony/call/CallSessionErrorDetails.html" title="class in org.eclipse.ecf.telephony.call">CallSessionErrorDetails</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/remoteservice/Constants.html#SERVICE_VENDOR"><B>SERVICE_VENDOR</B></A> - 
Static variable in interface org.eclipse.ecf.remoteservice.<A HREF="../org/eclipse/ecf/remoteservice/Constants.html" title="interface in org.eclipse.ecf.remoteservice">Constants</A>
<DD>Service property (named &quot;remote.service.vendor&quot;) identifying a
 service's vendor.
<DT><A HREF="../org/eclipse/ecf/provider/jmdns/container/JMDNSDiscoveryContainer.html#serviceAdded(javax.jmdns.ServiceEvent)"><B>serviceAdded(ServiceEvent)</B></A> - 
Method in class org.eclipse.ecf.provider.jmdns.container.<A HREF="../org/eclipse/ecf/provider/jmdns/container/JMDNSDiscoveryContainer.html" title="class in org.eclipse.ecf.provider.jmdns.container">JMDNSDiscoveryContainer</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/osgi/services/discovery/DiscoveredServiceTracker.html#serviceChanged(org.eclipse.ecf.osgi.services.discovery.DiscoveredServiceNotification)"><B>serviceChanged(DiscoveredServiceNotification)</B></A> - 
Method in interface org.eclipse.ecf.osgi.services.discovery.<A HREF="../org/eclipse/ecf/osgi/services/discovery/DiscoveredServiceTracker.html" title="interface in org.eclipse.ecf.osgi.services.discovery">DiscoveredServiceTracker</A>
<DD><B>Deprecated.</B>&nbsp;Receives notification that information known to <code>Discovery</code>
 regarding a remote service has changed.
<DT><A HREF="../org/eclipse/ecf/discovery/ServiceContainerEvent.html" title="class in org.eclipse.ecf.discovery"><B>ServiceContainerEvent</B></A> - Class in <A HREF="../org/eclipse/ecf/discovery/package-summary.html">org.eclipse.ecf.discovery</A><DD>Base event implementation of <A HREF="../org/eclipse/ecf/discovery/IServiceEvent.html" title="interface in org.eclipse.ecf.discovery"><CODE>IServiceEvent</CODE></A>.<DT><A HREF="../org/eclipse/ecf/discovery/ServiceContainerEvent.html#ServiceContainerEvent(org.eclipse.ecf.discovery.IServiceInfo, org.eclipse.ecf.core.identity.ID)"><B>ServiceContainerEvent(IServiceInfo, ID)</B></A> - 
Constructor for class org.eclipse.ecf.discovery.<A HREF="../org/eclipse/ecf/discovery/ServiceContainerEvent.html" title="class in org.eclipse.ecf.discovery">ServiceContainerEvent</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/osgi/services/discovery/local/ServiceDescriptionParser.html" title="class in org.eclipse.ecf.osgi.services.discovery.local"><B>ServiceDescriptionParser</B></A> - Class in <A HREF="../org/eclipse/ecf/osgi/services/discovery/local/package-summary.html">org.eclipse.ecf.osgi.services.discovery.local</A><DD>&nbsp;<DT><A HREF="../org/eclipse/ecf/osgi/services/discovery/local/ServiceDescriptionParser.html#ServiceDescriptionParser()"><B>ServiceDescriptionParser()</B></A> - 
Constructor for class org.eclipse.ecf.osgi.services.discovery.local.<A HREF="../org/eclipse/ecf/osgi/services/discovery/local/ServiceDescriptionParser.html" title="class in org.eclipse.ecf.osgi.services.discovery.local">ServiceDescriptionParser</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/osgi/services/discovery/local/ServiceDescriptionPublisher.html" title="class in org.eclipse.ecf.osgi.services.discovery.local"><B>ServiceDescriptionPublisher</B></A> - Class in <A HREF="../org/eclipse/ecf/osgi/services/discovery/local/package-summary.html">org.eclipse.ecf.osgi.services.discovery.local</A><DD>&nbsp;<DT><A HREF="../org/eclipse/ecf/osgi/services/discovery/local/ServiceDescriptionPublisher.html#ServiceDescriptionPublisher(org.eclipse.ecf.osgi.services.discovery.local.FileBasedDiscoveryImpl)"><B>ServiceDescriptionPublisher(FileBasedDiscoveryImpl)</B></A> - 
Constructor for class org.eclipse.ecf.osgi.services.discovery.local.<A HREF="../org/eclipse/ecf/osgi/services/discovery/local/ServiceDescriptionPublisher.html" title="class in org.eclipse.ecf.osgi.services.discovery.local">ServiceDescriptionPublisher</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/discovery/IServiceListener.html#serviceDiscovered(org.eclipse.ecf.discovery.IServiceEvent)"><B>serviceDiscovered(IServiceEvent)</B></A> - 
Method in interface org.eclipse.ecf.discovery.<A HREF="../org/eclipse/ecf/discovery/IServiceListener.html" title="interface in org.eclipse.ecf.discovery">IServiceListener</A>
<DD>Notification that a service has been discovered (the service is fully resolved).
<DT><A HREF="../org/eclipse/ecf/provider/discovery/CompositeDiscoveryContainer.CompositeContainerServiceListener.html#serviceDiscovered(org.eclipse.ecf.discovery.IServiceEvent)"><B>serviceDiscovered(IServiceEvent)</B></A> - 
Method in class org.eclipse.ecf.provider.discovery.<A HREF="../org/eclipse/ecf/provider/discovery/CompositeDiscoveryContainer.CompositeContainerServiceListener.html" title="class in org.eclipse.ecf.provider.discovery">CompositeDiscoveryContainer.CompositeContainerServiceListener</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/osgi/services/discovery/ServiceEndpointDescription.html" title="interface in org.eclipse.ecf.osgi.services.discovery"><B>ServiceEndpointDescription</B></A> - Interface in <A HREF="../org/eclipse/ecf/osgi/services/discovery/package-summary.html">org.eclipse.ecf.osgi.services.discovery</A><DD><B>Deprecated.</B>&nbsp;<I>This interface is deprecated because at the time of ECF
             3.0/Galileo release, it seems likely that this class will be
             moved, or renamed, or undergo major changes after the release of
             ECF 3.0. This deprecation is therefore intended as a notice to
             consumers about these upcoming changes in the RFC119
             specification, and the consequent changes to these OSGi-defined
             classes.</I><DT><A HREF="../org/eclipse/ecf/osgi/services/discovery/local/ServiceEndpointDescriptionImpl.html" title="class in org.eclipse.ecf.osgi.services.discovery.local"><B>ServiceEndpointDescriptionImpl</B></A> - Class in <A HREF="../org/eclipse/ecf/osgi/services/discovery/local/package-summary.html">org.eclipse.ecf.osgi.services.discovery.local</A><DD>&nbsp;<DT><A HREF="../org/eclipse/ecf/osgi/services/discovery/local/ServiceEndpointDescriptionImpl.html#ServiceEndpointDescriptionImpl()"><B>ServiceEndpointDescriptionImpl()</B></A> - 
Constructor for class org.eclipse.ecf.osgi.services.discovery.local.<A HREF="../org/eclipse/ecf/osgi/services/discovery/local/ServiceEndpointDescriptionImpl.html" title="class in org.eclipse.ecf.osgi.services.discovery.local">ServiceEndpointDescriptionImpl</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/osgi/services/discovery/local/ServiceEndpointDescriptionImpl.html#ServiceEndpointDescriptionImpl(java.util.Collection, java.util.Collection, java.util.Collection, java.util.Map, java.lang.String)"><B>ServiceEndpointDescriptionImpl(Collection, Collection, Collection, Map, String)</B></A> - 
Constructor for class org.eclipse.ecf.osgi.services.discovery.local.<A HREF="../org/eclipse/ecf/osgi/services/discovery/local/ServiceEndpointDescriptionImpl.html" title="class in org.eclipse.ecf.osgi.services.discovery.local">ServiceEndpointDescriptionImpl</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/discovery/identity/ServiceID.html" title="class in org.eclipse.ecf.discovery.identity"><B>ServiceID</B></A> - Class in <A HREF="../org/eclipse/ecf/discovery/identity/package-summary.html">org.eclipse.ecf.discovery.identity</A><DD>Service identity type.<DT><A HREF="../org/eclipse/ecf/discovery/identity/ServiceID.html#ServiceID(org.eclipse.ecf.core.identity.Namespace, org.eclipse.ecf.discovery.identity.IServiceTypeID, java.net.URI)"><B>ServiceID(Namespace, IServiceTypeID, URI)</B></A> - 
Constructor for class org.eclipse.ecf.discovery.identity.<A HREF="../org/eclipse/ecf/discovery/identity/ServiceID.html" title="class in org.eclipse.ecf.discovery.identity">ServiceID</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/discovery/ServiceInfo.html#serviceID"><B>serviceID</B></A> - 
Variable in class org.eclipse.ecf.discovery.<A HREF="../org/eclipse/ecf/discovery/ServiceInfo.html" title="class in org.eclipse.ecf.discovery">ServiceInfo</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/discovery/ui/model/impl/IServiceInfoImpl.html#serviceID"><B>serviceID</B></A> - 
Variable in class org.eclipse.ecf.discovery.ui.model.impl.<A HREF="../org/eclipse/ecf/discovery/ui/model/impl/IServiceInfoImpl.html" title="class in org.eclipse.ecf.discovery.ui.model.impl">IServiceInfoImpl</A>
<DD>The cached value of the '<A HREF="../org/eclipse/ecf/discovery/ui/model/impl/IServiceInfoImpl.html#getServiceID()"><CODE><em>Service ID</em></CODE></A>' reference.
<DT><A HREF="../org/eclipse/ecf/remoteservice/client/RemoteServiceClientRegistration.html#serviceID"><B>serviceID</B></A> - 
Variable in class org.eclipse.ecf.remoteservice.client.<A HREF="../org/eclipse/ecf/remoteservice/client/RemoteServiceClientRegistration.html" title="class in org.eclipse.ecf.remoteservice.client">RemoteServiceClientRegistration</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/discovery/identity/ServiceIDFactory.html" title="class in org.eclipse.ecf.discovery.identity"><B>ServiceIDFactory</B></A> - Class in <A HREF="../org/eclipse/ecf/discovery/identity/package-summary.html">org.eclipse.ecf.discovery.identity</A><DD>ServiceIDFactory implementation.<DT><A HREF="../org/eclipse/ecf/discovery/identity/ServiceIDFactory.html#ServiceIDFactory()"><B>ServiceIDFactory()</B></A> - 
Constructor for class org.eclipse.ecf.discovery.identity.<A HREF="../org/eclipse/ecf/discovery/identity/ServiceIDFactory.html" title="class in org.eclipse.ecf.discovery.identity">ServiceIDFactory</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/discovery/identity/ServiceID.html#serviceInfo"><B>serviceInfo</B></A> - 
Variable in class org.eclipse.ecf.discovery.identity.<A HREF="../org/eclipse/ecf/discovery/identity/ServiceID.html" title="class in org.eclipse.ecf.discovery.identity">ServiceID</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/discovery/ServiceInfo.html" title="class in org.eclipse.ecf.discovery"><B>ServiceInfo</B></A> - Class in <A HREF="../org/eclipse/ecf/discovery/package-summary.html">org.eclipse.ecf.discovery</A><DD>Base implementation of <A HREF="../org/eclipse/ecf/discovery/IServiceInfo.html" title="interface in org.eclipse.ecf.discovery"><CODE>IServiceInfo</CODE></A>.<DT><A HREF="../org/eclipse/ecf/discovery/ServiceInfo.html#ServiceInfo()"><B>ServiceInfo()</B></A> - 
Constructor for class org.eclipse.ecf.discovery.<A HREF="../org/eclipse/ecf/discovery/ServiceInfo.html" title="class in org.eclipse.ecf.discovery">ServiceInfo</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/discovery/ServiceInfo.html#ServiceInfo(java.net.URI, java.lang.String, org.eclipse.ecf.discovery.identity.IServiceTypeID)"><B>ServiceInfo(URI, String, IServiceTypeID)</B></A> - 
Constructor for class org.eclipse.ecf.discovery.<A HREF="../org/eclipse/ecf/discovery/ServiceInfo.html" title="class in org.eclipse.ecf.discovery">ServiceInfo</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/discovery/ServiceInfo.html#ServiceInfo(java.net.URI, java.lang.String, org.eclipse.ecf.discovery.identity.IServiceTypeID, org.eclipse.ecf.discovery.IServiceProperties)"><B>ServiceInfo(URI, String, IServiceTypeID, IServiceProperties)</B></A> - 
Constructor for class org.eclipse.ecf.discovery.<A HREF="../org/eclipse/ecf/discovery/ServiceInfo.html" title="class in org.eclipse.ecf.discovery">ServiceInfo</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/discovery/ServiceInfo.html#ServiceInfo(java.net.URI, java.lang.String, org.eclipse.ecf.discovery.identity.IServiceTypeID, int, int, org.eclipse.ecf.discovery.IServiceProperties)"><B>ServiceInfo(URI, String, IServiceTypeID, int, int, IServiceProperties)</B></A> - 
Constructor for class org.eclipse.ecf.discovery.<A HREF="../org/eclipse/ecf/discovery/ServiceInfo.html" title="class in org.eclipse.ecf.discovery">ServiceInfo</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/discovery/ServiceInfo.html#ServiceInfo(java.net.URI, java.lang.String, org.eclipse.ecf.discovery.identity.IServiceTypeID, int, int, org.eclipse.ecf.discovery.IServiceProperties, long)"><B>ServiceInfo(URI, String, IServiceTypeID, int, int, IServiceProperties, long)</B></A> - 
Constructor for class org.eclipse.ecf.discovery.<A HREF="../org/eclipse/ecf/discovery/ServiceInfo.html" title="class in org.eclipse.ecf.discovery">ServiceInfo</A>
<DD>Create an IServiceInfo instance.
<DT><A HREF="../org/eclipse/ecf/discovery/AbstractDiscoveryContainerAdapter.html#serviceListeners"><B>serviceListeners</B></A> - 
Variable in class org.eclipse.ecf.discovery.<A HREF="../org/eclipse/ecf/discovery/AbstractDiscoveryContainerAdapter.html" title="class in org.eclipse.ecf.discovery">AbstractDiscoveryContainerAdapter</A>
<DD>Map of service type to collection of service listeners i.e.
<DT><A HREF="../org/eclipse/ecf/provider/remoteservice/generic/RegistrySharedObject.html#serviceListeners"><B>serviceListeners</B></A> - 
Variable in class org.eclipse.ecf.provider.remoteservice.generic.<A HREF="../org/eclipse/ecf/provider/remoteservice/generic/RegistrySharedObject.html" title="class in org.eclipse.ecf.provider.remoteservice.generic">RegistrySharedObject</A>
<DD>List of remote service listeners (added to/removed from by addRemoteServiceListener/removeRemoteServiceListener
<DT><A HREF="../org/eclipse/ecf/discovery/ServiceInfo.html#serviceName"><B>serviceName</B></A> - 
Variable in class org.eclipse.ecf.discovery.<A HREF="../org/eclipse/ecf/discovery/ServiceInfo.html" title="class in org.eclipse.ecf.discovery">ServiceInfo</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/discovery/ServiceProperties.html" title="class in org.eclipse.ecf.discovery"><B>ServiceProperties</B></A> - Class in <A HREF="../org/eclipse/ecf/discovery/package-summary.html">org.eclipse.ecf.discovery</A><DD>Service properties implementation class for <A HREF="../org/eclipse/ecf/discovery/IServiceProperties.html" title="interface in org.eclipse.ecf.discovery"><CODE>IServiceProperties</CODE></A>.<DT><A HREF="../org/eclipse/ecf/discovery/ServiceProperties.html#ServiceProperties()"><B>ServiceProperties()</B></A> - 
Constructor for class org.eclipse.ecf.discovery.<A HREF="../org/eclipse/ecf/discovery/ServiceProperties.html" title="class in org.eclipse.ecf.discovery">ServiceProperties</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/discovery/ServiceProperties.html#ServiceProperties(java.util.Properties)"><B>ServiceProperties(Properties)</B></A> - 
Constructor for class org.eclipse.ecf.discovery.<A HREF="../org/eclipse/ecf/discovery/ServiceProperties.html" title="class in org.eclipse.ecf.discovery">ServiceProperties</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/discovery/ServiceProperties.html#ServiceProperties(org.eclipse.ecf.discovery.IServiceProperties)"><B>ServiceProperties(IServiceProperties)</B></A> - 
Constructor for class org.eclipse.ecf.discovery.<A HREF="../org/eclipse/ecf/discovery/ServiceProperties.html" title="class in org.eclipse.ecf.discovery">ServiceProperties</A>
<DD>Creates a copy of the given <A HREF="../org/eclipse/ecf/discovery/IServiceProperties.html" title="interface in org.eclipse.ecf.discovery"><CODE>IServiceProperties</CODE></A>
<DT><A HREF="../org/eclipse/ecf/osgi/services/discovery/RemoteServiceEndpointDescription.html#serviceProperties"><B>serviceProperties</B></A> - 
Variable in class org.eclipse.ecf.osgi.services.discovery.<A HREF="../org/eclipse/ecf/osgi/services/discovery/RemoteServiceEndpointDescription.html" title="class in org.eclipse.ecf.osgi.services.discovery">RemoteServiceEndpointDescription</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/osgi/services/discovery/ServicePublication.html" title="interface in org.eclipse.ecf.osgi.services.discovery"><B>ServicePublication</B></A> - Interface in <A HREF="../org/eclipse/ecf/osgi/services/discovery/package-summary.html">org.eclipse.ecf.osgi.services.discovery</A><DD><B>Deprecated.</B>&nbsp;<I>This interface is deprecated because at the time of ECF
             3.0/Galileo release, it seems likely that this class will be
             moved, or renamed, or undergo major changes after the release of
             ECF 3.0. This deprecation is therefore intended as a notice to
             consumers about these upcoming changes in the RFC119
             specification, and the consequent changes to these OSGi-defined
             classes.</I><DT><A HREF="../org/eclipse/ecf/osgi/services/discovery/local/ServicePublicationTracker.html" title="class in org.eclipse.ecf.osgi.services.discovery.local"><B>ServicePublicationTracker</B></A> - Class in <A HREF="../org/eclipse/ecf/osgi/services/discovery/local/package-summary.html">org.eclipse.ecf.osgi.services.discovery.local</A><DD>&nbsp;<DT><A HREF="../org/eclipse/ecf/osgi/services/discovery/local/ServicePublicationTracker.html#ServicePublicationTracker(org.osgi.framework.BundleContext, org.eclipse.ecf.osgi.services.discovery.local.FileBasedDiscoveryImpl)"><B>ServicePublicationTracker(BundleContext, FileBasedDiscoveryImpl)</B></A> - 
Constructor for class org.eclipse.ecf.osgi.services.discovery.local.<A HREF="../org/eclipse/ecf/osgi/services/discovery/local/ServicePublicationTracker.html" title="class in org.eclipse.ecf.osgi.services.discovery.local">ServicePublicationTracker</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/remoteservice/generic/RemoteServiceRegistrationImpl.html#serviceranking"><B>serviceranking</B></A> - 
Variable in class org.eclipse.ecf.provider.remoteservice.generic.<A HREF="../org/eclipse/ecf/provider/remoteservice/generic/RemoteServiceRegistrationImpl.html" title="class in org.eclipse.ecf.provider.remoteservice.generic">RemoteServiceRegistrationImpl</A>
<DD>service ranking.
<DT><A HREF="../org/eclipse/ecf/provider/jmdns/container/JMDNSDiscoveryContainer.html#serviceRemoved(javax.jmdns.ServiceEvent)"><B>serviceRemoved(ServiceEvent)</B></A> - 
Method in class org.eclipse.ecf.provider.jmdns.container.<A HREF="../org/eclipse/ecf/provider/jmdns/container/JMDNSDiscoveryContainer.html" title="class in org.eclipse.ecf.provider.jmdns.container">JMDNSDiscoveryContainer</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/jmdns/container/JMDNSDiscoveryContainer.html#serviceResolved(javax.jmdns.ServiceEvent)"><B>serviceResolved(ServiceEvent)</B></A> - 
Method in class org.eclipse.ecf.provider.jmdns.container.<A HREF="../org/eclipse/ecf/provider/jmdns/container/JMDNSDiscoveryContainer.html" title="class in org.eclipse.ecf.provider.jmdns.container">JMDNSDiscoveryContainer</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/discovery/ui/model/resource/ServiceResource.html" title="class in org.eclipse.ecf.discovery.ui.model.resource"><B>ServiceResource</B></A> - Class in <A HREF="../org/eclipse/ecf/discovery/ui/model/resource/package-summary.html">org.eclipse.ecf.discovery.ui.model.resource</A><DD>&nbsp;<DT><A HREF="../org/eclipse/ecf/discovery/ui/model/resource/ServiceResource.html#ServiceResource(org.eclipse.emf.common.util.URI)"><B>ServiceResource(URI)</B></A> - 
Constructor for class org.eclipse.ecf.discovery.ui.model.resource.<A HREF="../org/eclipse/ecf/discovery/ui/model/resource/ServiceResource.html" title="class in org.eclipse.ecf.discovery.ui.model.resource">ServiceResource</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/discovery/ui/model/resource/Messages.html#ServiceResource_NO_DISCOVERY_CONTAINER_AVAILABLE"><B>ServiceResource_NO_DISCOVERY_CONTAINER_AVAILABLE</B></A> - 
Static variable in class org.eclipse.ecf.discovery.ui.model.resource.<A HREF="../org/eclipse/ecf/discovery/ui/model/resource/Messages.html" title="class in org.eclipse.ecf.discovery.ui.model.resource">Messages</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/discovery/ui/model/resource/Messages.html#ServiceResource_NoEMFServiceModel"><B>ServiceResource_NoEMFServiceModel</B></A> - 
Static variable in class org.eclipse.ecf.discovery.ui.model.resource.<A HREF="../org/eclipse/ecf/discovery/ui/model/resource/Messages.html" title="class in org.eclipse.ecf.discovery.ui.model.resource">Messages</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/discovery/ui/model/resource/ServiceResourceFactory.html" title="class in org.eclipse.ecf.discovery.ui.model.resource"><B>ServiceResourceFactory</B></A> - Class in <A HREF="../org/eclipse/ecf/discovery/ui/model/resource/package-summary.html">org.eclipse.ecf.discovery.ui.model.resource</A><DD>&nbsp;<DT><A HREF="../org/eclipse/ecf/discovery/ui/model/resource/ServiceResourceFactory.html#ServiceResourceFactory()"><B>ServiceResourceFactory()</B></A> - 
Constructor for class org.eclipse.ecf.discovery.ui.model.resource.<A HREF="../org/eclipse/ecf/discovery/ui/model/resource/ServiceResourceFactory.html" title="class in org.eclipse.ecf.discovery.ui.model.resource">ServiceResourceFactory</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/discovery/identity/ServiceTypeID.html#services"><B>services</B></A> - 
Variable in class org.eclipse.ecf.discovery.identity.<A HREF="../org/eclipse/ecf/discovery/identity/ServiceTypeID.html" title="class in org.eclipse.ecf.discovery.identity">ServiceTypeID</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/discovery/ui/model/impl/IHostImpl.html#services"><B>services</B></A> - 
Variable in class org.eclipse.ecf.discovery.ui.model.impl.<A HREF="../org/eclipse/ecf/discovery/ui/model/impl/IHostImpl.html" title="class in org.eclipse.ecf.discovery.ui.model.impl">IHostImpl</A>
<DD>The cached value of the '<A HREF="../org/eclipse/ecf/discovery/ui/model/impl/IHostImpl.html#getServices()"><CODE><em>Services</em></CODE></A>' containment reference list.
<DT><A HREF="../org/eclipse/ecf/discovery/AbstractDiscoveryContainerAdapter.html#servicesNamespaceName"><B>servicesNamespaceName</B></A> - 
Variable in class org.eclipse.ecf.discovery.<A HREF="../org/eclipse/ecf/discovery/AbstractDiscoveryContainerAdapter.html" title="class in org.eclipse.ecf.discovery">AbstractDiscoveryContainerAdapter</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/discovery/ServiceTypeContainerEvent.html#serviceType"><B>serviceType</B></A> - 
Variable in class org.eclipse.ecf.discovery.<A HREF="../org/eclipse/ecf/discovery/ServiceTypeContainerEvent.html" title="class in org.eclipse.ecf.discovery">ServiceTypeContainerEvent</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/jmdns/container/JMDNSDiscoveryContainer.html#serviceTypeAdded(javax.jmdns.ServiceEvent)"><B>serviceTypeAdded(ServiceEvent)</B></A> - 
Method in class org.eclipse.ecf.provider.jmdns.container.<A HREF="../org/eclipse/ecf/provider/jmdns/container/JMDNSDiscoveryContainer.html" title="class in org.eclipse.ecf.provider.jmdns.container">JMDNSDiscoveryContainer</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/remoteservice/ServiceTypeListener.html#serviceTypeAdded(org.eclipse.ecf.discovery.IServiceTypeEvent)"><B>serviceTypeAdded(IServiceTypeEvent)</B></A> - 
Method in class org.eclipse.ecf.provider.remoteservice.<A HREF="../org/eclipse/ecf/provider/remoteservice/ServiceTypeListener.html" title="class in org.eclipse.ecf.provider.remoteservice">ServiceTypeListener</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/discovery/ServiceTypeContainerEvent.html" title="class in org.eclipse.ecf.discovery"><B>ServiceTypeContainerEvent</B></A> - Class in <A HREF="../org/eclipse/ecf/discovery/package-summary.html">org.eclipse.ecf.discovery</A><DD>Base event implementation of <A HREF="../org/eclipse/ecf/discovery/IServiceEvent.html" title="interface in org.eclipse.ecf.discovery"><CODE>IServiceEvent</CODE></A>.<DT><A HREF="../org/eclipse/ecf/discovery/ServiceTypeContainerEvent.html#ServiceTypeContainerEvent(org.eclipse.ecf.discovery.identity.IServiceTypeID, org.eclipse.ecf.core.identity.ID)"><B>ServiceTypeContainerEvent(IServiceTypeID, ID)</B></A> - 
Constructor for class org.eclipse.ecf.discovery.<A HREF="../org/eclipse/ecf/discovery/ServiceTypeContainerEvent.html" title="class in org.eclipse.ecf.discovery">ServiceTypeContainerEvent</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/discovery/IServiceTypeListener.html#serviceTypeDiscovered(org.eclipse.ecf.discovery.IServiceTypeEvent)"><B>serviceTypeDiscovered(IServiceTypeEvent)</B></A> - 
Method in interface org.eclipse.ecf.discovery.<A HREF="../org/eclipse/ecf/discovery/IServiceTypeListener.html" title="interface in org.eclipse.ecf.discovery">IServiceTypeListener</A>
<DD>Notification that a service type has been discovered
<DT><A HREF="../org/eclipse/ecf/provider/discovery/CompositeDiscoveryContainer.CompositeContainerServiceTypeListener.html#serviceTypeDiscovered(org.eclipse.ecf.discovery.IServiceTypeEvent)"><B>serviceTypeDiscovered(IServiceTypeEvent)</B></A> - 
Method in class org.eclipse.ecf.provider.discovery.<A HREF="../org/eclipse/ecf/provider/discovery/CompositeDiscoveryContainer.CompositeContainerServiceTypeListener.html" title="class in org.eclipse.ecf.provider.discovery">CompositeDiscoveryContainer.CompositeContainerServiceTypeListener</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/remoteservice/ServiceTypeListener.html#serviceTypeDiscovered(org.eclipse.ecf.discovery.IServiceTypeEvent)"><B>serviceTypeDiscovered(IServiceTypeEvent)</B></A> - 
Method in class org.eclipse.ecf.provider.remoteservice.<A HREF="../org/eclipse/ecf/provider/remoteservice/ServiceTypeListener.html" title="class in org.eclipse.ecf.provider.remoteservice">ServiceTypeListener</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/discovery/identity/ServiceTypeID.html" title="class in org.eclipse.ecf.discovery.identity"><B>ServiceTypeID</B></A> - Class in <A HREF="../org/eclipse/ecf/discovery/identity/package-summary.html">org.eclipse.ecf.discovery.identity</A><DD>ServiceTypeID base class.<DT><A HREF="../org/eclipse/ecf/discovery/identity/ServiceTypeID.html#ServiceTypeID(org.eclipse.ecf.core.identity.Namespace)"><B>ServiceTypeID(Namespace)</B></A> - 
Constructor for class org.eclipse.ecf.discovery.identity.<A HREF="../org/eclipse/ecf/discovery/identity/ServiceTypeID.html" title="class in org.eclipse.ecf.discovery.identity">ServiceTypeID</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/discovery/identity/ServiceTypeID.html#ServiceTypeID(org.eclipse.ecf.core.identity.Namespace, java.lang.String[], java.lang.String[], java.lang.String[], java.lang.String)"><B>ServiceTypeID(Namespace, String[], String[], String[], String)</B></A> - 
Constructor for class org.eclipse.ecf.discovery.identity.<A HREF="../org/eclipse/ecf/discovery/identity/ServiceTypeID.html" title="class in org.eclipse.ecf.discovery.identity">ServiceTypeID</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/discovery/identity/ServiceTypeID.html#ServiceTypeID(org.eclipse.ecf.core.identity.Namespace, org.eclipse.ecf.discovery.identity.IServiceTypeID)"><B>ServiceTypeID(Namespace, IServiceTypeID)</B></A> - 
Constructor for class org.eclipse.ecf.discovery.identity.<A HREF="../org/eclipse/ecf/discovery/identity/ServiceTypeID.html" title="class in org.eclipse.ecf.discovery.identity">ServiceTypeID</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/discovery/identity/ServiceTypeID.html#ServiceTypeID(org.eclipse.ecf.core.identity.Namespace, java.lang.String)"><B>ServiceTypeID(Namespace, String)</B></A> - 
Constructor for class org.eclipse.ecf.discovery.identity.<A HREF="../org/eclipse/ecf/discovery/identity/ServiceTypeID.html" title="class in org.eclipse.ecf.discovery.identity">ServiceTypeID</A>
<DD>Clients should not call this method directly.
<DT><A HREF="../org/eclipse/ecf/discovery/ui/model/impl/IServiceIDImpl.html#serviceTypeID"><B>serviceTypeID</B></A> - 
Variable in class org.eclipse.ecf.discovery.ui.model.impl.<A HREF="../org/eclipse/ecf/discovery/ui/model/impl/IServiceIDImpl.html" title="class in org.eclipse.ecf.discovery.ui.model.impl">IServiceIDImpl</A>
<DD>The cached value of the '<A HREF="../org/eclipse/ecf/discovery/ui/model/impl/IServiceIDImpl.html#getServiceTypeID()"><CODE><em>Service Type ID</em></CODE></A>' reference.
<DT><A HREF="../org/eclipse/ecf/provider/remoteservice/ServiceTypeListener.html" title="class in org.eclipse.ecf.provider.remoteservice"><B>ServiceTypeListener</B></A> - Class in <A HREF="../org/eclipse/ecf/provider/remoteservice/package-summary.html">org.eclipse.ecf.provider.remoteservice</A><DD>Helper class for setting up service listeners for a given serviceTypeID.<DT><A HREF="../org/eclipse/ecf/provider/remoteservice/ServiceTypeListener.html#ServiceTypeListener(org.eclipse.ecf.discovery.IDiscoveryLocator, org.eclipse.ecf.discovery.IServiceListener, org.eclipse.ecf.discovery.identity.IServiceTypeID[], java.lang.String[])"><B>ServiceTypeListener(IDiscoveryLocator, IServiceListener, IServiceTypeID[], String[])</B></A> - 
Constructor for class org.eclipse.ecf.provider.remoteservice.<A HREF="../org/eclipse/ecf/provider/remoteservice/ServiceTypeListener.html" title="class in org.eclipse.ecf.provider.remoteservice">ServiceTypeListener</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/remoteservice/ServiceTypeListener.html#ServiceTypeListener(org.eclipse.ecf.discovery.IDiscoveryLocator, org.eclipse.ecf.discovery.IServiceListener, org.eclipse.ecf.discovery.identity.IServiceTypeID, java.lang.String[])"><B>ServiceTypeListener(IDiscoveryLocator, IServiceListener, IServiceTypeID, String[])</B></A> - 
Constructor for class org.eclipse.ecf.provider.remoteservice.<A HREF="../org/eclipse/ecf/provider/remoteservice/ServiceTypeListener.html" title="class in org.eclipse.ecf.provider.remoteservice">ServiceTypeListener</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/remoteservice/ServiceTypeListener.html#ServiceTypeListener(org.eclipse.ecf.discovery.IDiscoveryLocator, org.eclipse.ecf.discovery.IServiceListener, org.eclipse.ecf.discovery.identity.IServiceTypeID)"><B>ServiceTypeListener(IDiscoveryLocator, IServiceListener, IServiceTypeID)</B></A> - 
Constructor for class org.eclipse.ecf.provider.remoteservice.<A HREF="../org/eclipse/ecf/provider/remoteservice/ServiceTypeListener.html" title="class in org.eclipse.ecf.provider.remoteservice">ServiceTypeListener</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/remoteservice/ServiceTypeListener.html#ServiceTypeListener(org.eclipse.ecf.discovery.IDiscoveryLocator, org.eclipse.ecf.discovery.IServiceListener)"><B>ServiceTypeListener(IDiscoveryLocator, IServiceListener)</B></A> - 
Constructor for class org.eclipse.ecf.provider.remoteservice.<A HREF="../org/eclipse/ecf/provider/remoteservice/ServiceTypeListener.html" title="class in org.eclipse.ecf.provider.remoteservice">ServiceTypeListener</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/discovery/AbstractDiscoveryContainerAdapter.html#serviceTypeListeners"><B>serviceTypeListeners</B></A> - 
Variable in class org.eclipse.ecf.discovery.<A HREF="../org/eclipse/ecf/discovery/AbstractDiscoveryContainerAdapter.html" title="class in org.eclipse.ecf.discovery">AbstractDiscoveryContainerAdapter</A>
<DD>Collection of service type listeners i.e.
<DT><A HREF="../org/eclipse/ecf/discovery/IServiceListener.html#serviceUndiscovered(org.eclipse.ecf.discovery.IServiceEvent)"><B>serviceUndiscovered(IServiceEvent)</B></A> - 
Method in interface org.eclipse.ecf.discovery.<A HREF="../org/eclipse/ecf/discovery/IServiceListener.html" title="interface in org.eclipse.ecf.discovery">IServiceListener</A>
<DD>Notification that a previously discovered service has been undiscovered.
<DT><A HREF="../org/eclipse/ecf/provider/discovery/CompositeDiscoveryContainer.CompositeContainerServiceListener.html#serviceUndiscovered(org.eclipse.ecf.discovery.IServiceEvent)"><B>serviceUndiscovered(IServiceEvent)</B></A> - 
Method in class org.eclipse.ecf.provider.discovery.<A HREF="../org/eclipse/ecf/provider/discovery/CompositeDiscoveryContainer.CompositeContainerServiceListener.html" title="class in org.eclipse.ecf.provider.discovery">CompositeDiscoveryContainer.CompositeContainerServiceListener</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/presence/history/IHistoryManager.html#setActive(boolean)"><B>setActive(boolean)</B></A> - 
Method in interface org.eclipse.ecf.presence.history.<A HREF="../org/eclipse/ecf/presence/history/IHistoryManager.html" title="interface in org.eclipse.ecf.presence.history">IHistoryManager</A>
<DD>Make this history manager active or inactive.
<DT><A HREF="../org/eclipse/ecf/discovery/ui/model/IHost.html#setAddress(java.net.InetAddress)"><B>setAddress(InetAddress)</B></A> - 
Method in interface org.eclipse.ecf.discovery.ui.model.<A HREF="../org/eclipse/ecf/discovery/ui/model/IHost.html" title="interface in org.eclipse.ecf.discovery.ui.model">IHost</A>
<DD>Sets the value of the '<A HREF="../org/eclipse/ecf/discovery/ui/model/IHost.html#getAddress()"><CODE><em>Address</em></CODE></A>' attribute.
<DT><A HREF="../org/eclipse/ecf/discovery/ui/model/impl/IHostImpl.html#setAddress(java.net.InetAddress)"><B>setAddress(InetAddress)</B></A> - 
Method in class org.eclipse.ecf.discovery.ui.model.impl.<A HREF="../org/eclipse/ecf/discovery/ui/model/impl/IHostImpl.html" title="class in org.eclipse.ecf.discovery.ui.model.impl">IHostImpl</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/remoteservice/client/AbstractClientContainer.html#setAlwaysSendDefaultParameters(boolean)"><B>setAlwaysSendDefaultParameters(boolean)</B></A> - 
Method in class org.eclipse.ecf.remoteservice.client.<A HREF="../org/eclipse/ecf/remoteservice/client/AbstractClientContainer.html" title="class in org.eclipse.ecf.remoteservice.client">AbstractClientContainer</A>
<DD>Set the flag to <code>true</code> to include default parameters (which are specified when the callables are created) with
 every request to the remote service.
<DT><A HREF="../org/eclipse/ecf/filetransfer/IRemoteFileAttributes.html#setAttribute(java.lang.String, java.lang.String)"><B>setAttribute(String, String)</B></A> - 
Method in interface org.eclipse.ecf.filetransfer.<A HREF="../org/eclipse/ecf/filetransfer/IRemoteFileAttributes.html" title="interface in org.eclipse.ecf.filetransfer">IRemoteFileAttributes</A>
<DD>Set a given attribute value in this remote file attributes.
<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/browse/LocalRemoteFileAttributes.html#setAttribute(java.lang.String, java.lang.String)"><B>setAttribute(String, String)</B></A> - 
Method in class org.eclipse.ecf.provider.filetransfer.browse.<A HREF="../org/eclipse/ecf/provider/filetransfer/browse/LocalRemoteFileAttributes.html" title="class in org.eclipse.ecf.provider.filetransfer.browse">LocalRemoteFileAttributes</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/browse/URLRemoteFileAttributes.html#setAttribute(java.lang.String, java.lang.String)"><B>setAttribute(String, String)</B></A> - 
Method in class org.eclipse.ecf.provider.filetransfer.browse.<A HREF="../org/eclipse/ecf/provider/filetransfer/browse/URLRemoteFileAttributes.html" title="class in org.eclipse.ecf.provider.filetransfer.browse">URLRemoteFileAttributes</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/filetransfer/IRemoteFileInfo.html#setAttributes(org.eclipse.ecf.filetransfer.IRemoteFileAttributes)"><B>setAttributes(IRemoteFileAttributes)</B></A> - 
Method in interface org.eclipse.ecf.filetransfer.<A HREF="../org/eclipse/ecf/filetransfer/IRemoteFileInfo.html" title="interface in org.eclipse.ecf.filetransfer">IRemoteFileInfo</A>
<DD>Set the attributes for this remote file info.
<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/IFileTransferProtocolToFactoryMapper.html#setBrowseFileTransferFactory(java.lang.String, java.lang.String, org.eclipse.ecf.filetransfer.service.IRemoteFileSystemBrowserFactory, int)"><B>setBrowseFileTransferFactory(String, String, IRemoteFileSystemBrowserFactory, int)</B></A> - 
Method in interface org.eclipse.ecf.provider.filetransfer.<A HREF="../org/eclipse/ecf/provider/filetransfer/IFileTransferProtocolToFactoryMapper.html" title="interface in org.eclipse.ecf.provider.filetransfer">IFileTransferProtocolToFactoryMapper</A>
<DD>
 For the given protocol, set the given factory to be used for retrieve file transfer.
<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/IFileTransferProtocolToFactoryMapper.html#setBrowseFileTransferFactory(java.lang.String, java.lang.String, org.eclipse.ecf.filetransfer.service.IRemoteFileSystemBrowserFactory, int, boolean)"><B>setBrowseFileTransferFactory(String, String, IRemoteFileSystemBrowserFactory, int, boolean)</B></A> - 
Method in interface org.eclipse.ecf.provider.filetransfer.<A HREF="../org/eclipse/ecf/provider/filetransfer/IFileTransferProtocolToFactoryMapper.html" title="interface in org.eclipse.ecf.provider.filetransfer">IFileTransferProtocolToFactoryMapper</A>
<DD>
 For the given protocol, set the given factory to be used for retrieve file transfer.
<DT><A HREF="../org/eclipse/ecf/telephony/call/ui/actions/AbstractCallAction.html#setCallExceptionHandler(org.eclipse.ecf.core.util.IExceptionHandler)"><B>setCallExceptionHandler(IExceptionHandler)</B></A> - 
Method in class org.eclipse.ecf.telephony.call.ui.actions.<A HREF="../org/eclipse/ecf/telephony/call/ui/actions/AbstractCallAction.html" title="class in org.eclipse.ecf.telephony.call.ui.actions">AbstractCallAction</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/telephony/call/ui/actions/AbstractCallAction.html#setCallReceiver(org.eclipse.ecf.core.identity.ID)"><B>setCallReceiver(ID)</B></A> - 
Method in class org.eclipse.ecf.telephony.call.ui.actions.<A HREF="../org/eclipse/ecf/telephony/call/ui/actions/AbstractCallAction.html" title="class in org.eclipse.ecf.telephony.call.ui.actions">AbstractCallAction</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/browse/AbstractFileSystemBrowser.html#setCanceled(java.lang.Exception)"><B>setCanceled(Exception)</B></A> - 
Method in class org.eclipse.ecf.provider.filetransfer.browse.<A HREF="../org/eclipse/ecf/provider/filetransfer/browse/AbstractFileSystemBrowser.html" title="class in org.eclipse.ecf.provider.filetransfer.browse">AbstractFileSystemBrowser</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/datashare/BaseChannel.html#setChannelListener(org.eclipse.ecf.datashare.IChannelListener)"><B>setChannelListener(IChannelListener)</B></A> - 
Method in class org.eclipse.ecf.provider.datashare.<A HREF="../org/eclipse/ecf/provider/datashare/BaseChannel.html" title="class in org.eclipse.ecf.provider.datashare">BaseChannel</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/jobs/JobsExecutor.html#setChildProgressMonitor(org.eclipse.core.runtime.IProgressMonitor, org.eclipse.core.runtime.IProgressMonitor)"><B>setChildProgressMonitor(IProgressMonitor, IProgressMonitor)</B></A> - 
Method in class org.eclipse.ecf.core.jobs.<A HREF="../org/eclipse/ecf/core/jobs/JobsExecutor.html" title="class in org.eclipse.ecf.core.jobs">JobsExecutor</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectMsg.html#setClassName(java.lang.String)"><B>setClassName(String)</B></A> - 
Method in class org.eclipse.ecf.core.sharedobject.<A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectMsg.html" title="class in org.eclipse.ecf.core.sharedobject">SharedObjectMsg</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/retrieve/AbstractRetrieveFileTransfer.html#setCloseOutputStream(boolean)"><B>setCloseOutputStream(boolean)</B></A> - 
Method in class org.eclipse.ecf.provider.filetransfer.retrieve.<A HREF="../org/eclipse/ecf/provider/filetransfer/retrieve/AbstractRetrieveFileTransfer.html" title="class in org.eclipse.ecf.provider.filetransfer.retrieve">AbstractRetrieveFileTransfer</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/comm/tcp/Client.html#setCloseTimeout(long)"><B>setCloseTimeout(long)</B></A> - 
Method in class org.eclipse.ecf.provider.comm.tcp.<A HREF="../org/eclipse/ecf/provider/comm/tcp/Client.html" title="class in org.eclipse.ecf.provider.comm.tcp">Client</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/status/SerializableStatus.html#setCode(int)"><B>setCode(int)</B></A> - 
Method in class org.eclipse.ecf.core.status.<A HREF="../org/eclipse/ecf/core/status/SerializableStatus.html" title="class in org.eclipse.ecf.core.status">SerializableStatus</A>
<DD>Sets the status code.
<DT><A HREF="../org/eclipse/ecf/filetransfer/IRemoteFileSystemBrowserContainerAdapter.html#setConnectContextForAuthentication(org.eclipse.ecf.core.security.IConnectContext)"><B>setConnectContextForAuthentication(IConnectContext)</B></A> - 
Method in interface org.eclipse.ecf.filetransfer.<A HREF="../org/eclipse/ecf/filetransfer/IRemoteFileSystemBrowserContainerAdapter.html" title="interface in org.eclipse.ecf.filetransfer">IRemoteFileSystemBrowserContainerAdapter</A>
<DD>Set connect context for authentication upon subsequent
 <A HREF="../org/eclipse/ecf/filetransfer/IRemoteFileSystemBrowserContainerAdapter.html#sendBrowseRequest(org.eclipse.ecf.filetransfer.identity.IFileID, org.eclipse.ecf.filetransfer.IRemoteFileSystemListener)"><CODE>IRemoteFileSystemBrowserContainerAdapter.sendBrowseRequest(IFileID, IRemoteFileSystemListener)</CODE></A>.
<DT><A HREF="../org/eclipse/ecf/filetransfer/IRetrieveFileTransferContainerAdapter.html#setConnectContextForAuthentication(org.eclipse.ecf.core.security.IConnectContext)"><B>setConnectContextForAuthentication(IConnectContext)</B></A> - 
Method in interface org.eclipse.ecf.filetransfer.<A HREF="../org/eclipse/ecf/filetransfer/IRetrieveFileTransferContainerAdapter.html" title="interface in org.eclipse.ecf.filetransfer">IRetrieveFileTransferContainerAdapter</A>
<DD>Set connect context for authentication upon subsequent
 <A HREF="../org/eclipse/ecf/filetransfer/IRetrieveFileTransferContainerAdapter.html#sendRetrieveRequest(org.eclipse.ecf.filetransfer.identity.IFileID, org.eclipse.ecf.filetransfer.IFileTransferListener, java.util.Map)"><CODE>IRetrieveFileTransferContainerAdapter.sendRetrieveRequest(IFileID, IFileTransferListener, Map)</CODE></A>.
<DT><A HREF="../org/eclipse/ecf/filetransfer/ISendFileTransferContainerAdapter.html#setConnectContextForAuthentication(org.eclipse.ecf.core.security.IConnectContext)"><B>setConnectContextForAuthentication(IConnectContext)</B></A> - 
Method in interface org.eclipse.ecf.filetransfer.<A HREF="../org/eclipse/ecf/filetransfer/ISendFileTransferContainerAdapter.html" title="interface in org.eclipse.ecf.filetransfer">ISendFileTransferContainerAdapter</A>
<DD>Set connect context for authentication upon subsequent
 <A HREF="../org/eclipse/ecf/filetransfer/ISendFileTransferContainerAdapter.html#sendOutgoingRequest(org.eclipse.ecf.filetransfer.identity.IFileID, org.eclipse.ecf.filetransfer.IFileTransferInfo, org.eclipse.ecf.filetransfer.IFileTransferListener, java.util.Map)"><CODE>ISendFileTransferContainerAdapter.sendOutgoingRequest(IFileID, IFileTransferInfo, IFileTransferListener, Map)</CODE></A>.
<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/browse/MultiProtocolFileSystemBrowserAdapter.html#setConnectContextForAuthentication(org.eclipse.ecf.core.security.IConnectContext)"><B>setConnectContextForAuthentication(IConnectContext)</B></A> - 
Method in class org.eclipse.ecf.provider.filetransfer.browse.<A HREF="../org/eclipse/ecf/provider/filetransfer/browse/MultiProtocolFileSystemBrowserAdapter.html" title="class in org.eclipse.ecf.provider.filetransfer.browse">MultiProtocolFileSystemBrowserAdapter</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/outgoing/AbstractOutgoingFileTransfer.html#setConnectContextForAuthentication(org.eclipse.ecf.core.security.IConnectContext)"><B>setConnectContextForAuthentication(IConnectContext)</B></A> - 
Method in class org.eclipse.ecf.provider.filetransfer.outgoing.<A HREF="../org/eclipse/ecf/provider/filetransfer/outgoing/AbstractOutgoingFileTransfer.html" title="class in org.eclipse.ecf.provider.filetransfer.outgoing">AbstractOutgoingFileTransfer</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/outgoing/MultiProtocolOutgoingAdapter.html#setConnectContextForAuthentication(org.eclipse.ecf.core.security.IConnectContext)"><B>setConnectContextForAuthentication(IConnectContext)</B></A> - 
Method in class org.eclipse.ecf.provider.filetransfer.outgoing.<A HREF="../org/eclipse/ecf/provider/filetransfer/outgoing/MultiProtocolOutgoingAdapter.html" title="class in org.eclipse.ecf.provider.filetransfer.outgoing">MultiProtocolOutgoingAdapter</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/retrieve/AbstractRetrieveFileTransfer.html#setConnectContextForAuthentication(org.eclipse.ecf.core.security.IConnectContext)"><B>setConnectContextForAuthentication(IConnectContext)</B></A> - 
Method in class org.eclipse.ecf.provider.filetransfer.retrieve.<A HREF="../org/eclipse/ecf/provider/filetransfer/retrieve/AbstractRetrieveFileTransfer.html" title="class in org.eclipse.ecf.provider.filetransfer.retrieve">AbstractRetrieveFileTransfer</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/retrieve/MultiProtocolRetrieveAdapter.html#setConnectContextForAuthentication(org.eclipse.ecf.core.security.IConnectContext)"><B>setConnectContextForAuthentication(IConnectContext)</B></A> - 
Method in class org.eclipse.ecf.provider.filetransfer.retrieve.<A HREF="../org/eclipse/ecf/provider/filetransfer/retrieve/MultiProtocolRetrieveAdapter.html" title="class in org.eclipse.ecf.provider.filetransfer.retrieve">MultiProtocolRetrieveAdapter</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/retrieve/UrlConnectionRetrieveFileTransfer.html#setConnectContextForAuthentication(org.eclipse.ecf.core.security.IConnectContext)"><B>setConnectContextForAuthentication(IConnectContext)</B></A> - 
Method in class org.eclipse.ecf.provider.filetransfer.retrieve.<A HREF="../org/eclipse/ecf/provider/filetransfer/retrieve/UrlConnectionRetrieveFileTransfer.html" title="class in org.eclipse.ecf.provider.filetransfer.retrieve">UrlConnectionRetrieveFileTransfer</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/remoteservice/generic/RegistrySharedObject.html#setConnectContextForAuthentication(org.eclipse.ecf.core.security.IConnectContext)"><B>setConnectContextForAuthentication(IConnectContext)</B></A> - 
Method in class org.eclipse.ecf.provider.remoteservice.generic.<A HREF="../org/eclipse/ecf/provider/remoteservice/generic/RegistrySharedObject.html" title="class in org.eclipse.ecf.provider.remoteservice.generic">RegistrySharedObject</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/remoteservice/generic/RemoteServiceContainer.html#setConnectContextForAuthentication(org.eclipse.ecf.core.security.IConnectContext)"><B>setConnectContextForAuthentication(IConnectContext)</B></A> - 
Method in class org.eclipse.ecf.provider.remoteservice.generic.<A HREF="../org/eclipse/ecf/provider/remoteservice/generic/RemoteServiceContainer.html" title="class in org.eclipse.ecf.provider.remoteservice.generic">RemoteServiceContainer</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/remoteservice/client/AbstractClientContainer.html#setConnectContextForAuthentication(org.eclipse.ecf.core.security.IConnectContext)"><B>setConnectContextForAuthentication(IConnectContext)</B></A> - 
Method in class org.eclipse.ecf.remoteservice.client.<A HREF="../org/eclipse/ecf/remoteservice/client/AbstractClientContainer.html" title="class in org.eclipse.ecf.remoteservice.client">AbstractClientContainer</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/remoteservice/IRemoteServiceConsumer.html#setConnectContextForAuthentication(org.eclipse.ecf.core.security.IConnectContext)"><B>setConnectContextForAuthentication(IConnectContext)</B></A> - 
Method in interface org.eclipse.ecf.remoteservice.<A HREF="../org/eclipse/ecf/remoteservice/IRemoteServiceConsumer.html" title="interface in org.eclipse.ecf.remoteservice">IRemoteServiceConsumer</A>
<DD>Set connect context for authentication upon subsequent calls to
 <A HREF="../org/eclipse/ecf/remoteservice/IRemoteServiceConsumer.html#getRemoteServiceReferences(org.eclipse.ecf.core.identity.ID[], java.lang.String, java.lang.String)"><CODE>IRemoteServiceConsumer.getRemoteServiceReferences(ID[], String, String)</CODE></A> or <A HREF="../org/eclipse/ecf/remoteservice/IRemoteServiceConsumer.html#asyncGetRemoteServiceReferences(org.eclipse.ecf.core.identity.ID[], java.lang.String, java.lang.String)"><CODE>IRemoteServiceConsumer.asyncGetRemoteServiceReferences(ID[], String, String)</CODE></A>.
<DT><A HREF="../org/eclipse/ecf/remoteservice/IRemoteServiceContainerAdapter.html#setConnectContextForAuthentication(org.eclipse.ecf.core.security.IConnectContext)"><B>setConnectContextForAuthentication(IConnectContext)</B></A> - 
Method in interface org.eclipse.ecf.remoteservice.<A HREF="../org/eclipse/ecf/remoteservice/IRemoteServiceContainerAdapter.html" title="interface in org.eclipse.ecf.remoteservice">IRemoteServiceContainerAdapter</A>
<DD>Set connect context for authentication upon subsequent calls to
 <A HREF="../org/eclipse/ecf/remoteservice/IRemoteServiceContainerAdapter.html#getRemoteServiceReferences(org.eclipse.ecf.core.identity.ID[], java.lang.String, java.lang.String)"><CODE>IRemoteServiceContainerAdapter.getRemoteServiceReferences(ID[], String, String)</CODE></A> or <A HREF="../org/eclipse/ecf/remoteservice/IRemoteServiceContainerAdapter.html#asyncGetRemoteServiceReferences(org.eclipse.ecf.core.identity.ID[], java.lang.String, java.lang.String)"><CODE>IRemoteServiceContainerAdapter.asyncGetRemoteServiceReferences(ID[], String, String)</CODE></A>.
<DT><A HREF="../org/eclipse/ecf/core/sharedobject/ISharedObjectContainerClient.html#setConnectInitiatorPolicy(org.eclipse.ecf.core.security.IConnectInitiatorPolicy)"><B>setConnectInitiatorPolicy(IConnectInitiatorPolicy)</B></A> - 
Method in interface org.eclipse.ecf.core.sharedobject.<A HREF="../org/eclipse/ecf/core/sharedobject/ISharedObjectContainerClient.html" title="interface in org.eclipse.ecf.core.sharedobject">ISharedObjectContainerClient</A>
<DD>Set the connect initiator policy handler for authentication policy
<DT><A HREF="../org/eclipse/ecf/provider/generic/ClientSOContainer.html#setConnectInitiatorPolicy(org.eclipse.ecf.core.security.IConnectInitiatorPolicy)"><B>setConnectInitiatorPolicy(IConnectInitiatorPolicy)</B></A> - 
Method in class org.eclipse.ecf.provider.generic.<A HREF="../org/eclipse/ecf/provider/generic/ClientSOContainer.html" title="class in org.eclipse.ecf.provider.generic">ClientSOContainer</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/sharedobject/ISharedObjectContainerGroupManager.html#setConnectPolicy(org.eclipse.ecf.core.security.IConnectHandlerPolicy)"><B>setConnectPolicy(IConnectHandlerPolicy)</B></A> - 
Method in interface org.eclipse.ecf.core.sharedobject.<A HREF="../org/eclipse/ecf/core/sharedobject/ISharedObjectContainerGroupManager.html" title="interface in org.eclipse.ecf.core.sharedobject">ISharedObjectContainerGroupManager</A>
<DD>Set the join policy for this group manager.
<DT><A HREF="../org/eclipse/ecf/provider/generic/ServerSOContainer.html#setConnectPolicy(org.eclipse.ecf.core.security.IConnectHandlerPolicy)"><B>setConnectPolicy(IConnectHandlerPolicy)</B></A> - 
Method in class org.eclipse.ecf.provider.generic.<A HREF="../org/eclipse/ecf/provider/generic/ServerSOContainer.html" title="class in org.eclipse.ecf.provider.generic">ServerSOContainer</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/remoteservice/generic/RemoteServiceRegistryImpl.html#setContainerID(org.eclipse.ecf.core.identity.ID)"><B>setContainerID(ID)</B></A> - 
Method in class org.eclipse.ecf.provider.remoteservice.generic.<A HREF="../org/eclipse/ecf/provider/remoteservice/generic/RemoteServiceRegistryImpl.html" title="class in org.eclipse.ecf.provider.remoteservice.generic">RemoteServiceRegistryImpl</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/discovery/IContainerServiceInfoAdapter.html#setContainerProperties(java.lang.String, java.lang.String, java.lang.String, java.lang.Boolean)"><B>setContainerProperties(String, String, String, Boolean)</B></A> - 
Method in interface org.eclipse.ecf.discovery.<A HREF="../org/eclipse/ecf/discovery/IContainerServiceInfoAdapter.html" title="interface in org.eclipse.ecf.discovery">IContainerServiceInfoAdapter</A>
<DD>Set the container properties.
<DT><A HREF="../org/eclipse/ecf/discovery/IContainerServiceInfoAdapter.html#setContainerProperties(java.lang.String, java.lang.String, java.lang.Boolean)"><B>setContainerProperties(String, String, Boolean)</B></A> - 
Method in interface org.eclipse.ecf.discovery.<A HREF="../org/eclipse/ecf/discovery/IContainerServiceInfoAdapter.html" title="interface in org.eclipse.ecf.discovery">IContainerServiceInfoAdapter</A>
<DD>Set the container properties.
<DT><A HREF="../org/eclipse/ecf/provider/generic/ContainerMessage.html#setData(java.io.Serializable)"><B>setData(Serializable)</B></A> - 
Method in class org.eclipse.ecf.provider.generic.<A HREF="../org/eclipse/ecf/provider/generic/ContainerMessage.html" title="class in org.eclipse.ecf.provider.generic">ContainerMessage</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/remoteservice/RemoteServiceHelper.html#setDefaultTimeout(long)"><B>setDefaultTimeout(long)</B></A> - 
Static method in class org.eclipse.ecf.remoteservice.<A HREF="../org/eclipse/ecf/remoteservice/RemoteServiceHelper.html" title="class in org.eclipse.ecf.remoteservice">RemoteServiceHelper</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/zookeeper/core/ZooDiscoveryContainer.html#setDiscoveryProperties(java.util.Properties)"><B>setDiscoveryProperties(Properties)</B></A> - 
Method in class org.eclipse.ecf.provider.zookeeper.core.<A HREF="../org/eclipse/ecf/provider/zookeeper/core/ZooDiscoveryContainer.html" title="class in org.eclipse.ecf.provider.zookeeper.core">ZooDiscoveryContainer</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/retrieve/AbstractRetrieveFileTransfer.html#setDone(boolean)"><B>setDone(boolean)</B></A> - 
Method in class org.eclipse.ecf.provider.filetransfer.retrieve.<A HREF="../org/eclipse/ecf/provider/filetransfer/retrieve/AbstractRetrieveFileTransfer.html" title="class in org.eclipse.ecf.provider.filetransfer.retrieve">AbstractRetrieveFileTransfer</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/remoteservice/generic/Request.html#setDone(boolean)"><B>setDone(boolean)</B></A> - 
Method in class org.eclipse.ecf.provider.remoteservice.generic.<A HREF="../org/eclipse/ecf/provider/remoteservice/generic/Request.html" title="class in org.eclipse.ecf.provider.remoteservice.generic">Request</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/retrieve/AbstractRetrieveFileTransfer.html#setDoneCanceled()"><B>setDoneCanceled()</B></A> - 
Method in class org.eclipse.ecf.provider.filetransfer.retrieve.<A HREF="../org/eclipse/ecf/provider/filetransfer/retrieve/AbstractRetrieveFileTransfer.html" title="class in org.eclipse.ecf.provider.filetransfer.retrieve">AbstractRetrieveFileTransfer</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/retrieve/AbstractRetrieveFileTransfer.html#setDoneCanceled(java.lang.Exception)"><B>setDoneCanceled(Exception)</B></A> - 
Method in class org.eclipse.ecf.provider.filetransfer.retrieve.<A HREF="../org/eclipse/ecf/provider/filetransfer/retrieve/AbstractRetrieveFileTransfer.html" title="class in org.eclipse.ecf.provider.filetransfer.retrieve">AbstractRetrieveFileTransfer</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/retrieve/AbstractRetrieveFileTransfer.html#setDoneException(java.lang.Exception)"><B>setDoneException(Exception)</B></A> - 
Method in class org.eclipse.ecf.provider.filetransfer.retrieve.<A HREF="../org/eclipse/ecf/provider/filetransfer/retrieve/AbstractRetrieveFileTransfer.html" title="class in org.eclipse.ecf.provider.filetransfer.retrieve">AbstractRetrieveFileTransfer</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/discovery/ui/model/impl/IServiceInfoImpl.html#setEcfLocation(java.net.URI)"><B>setEcfLocation(URI)</B></A> - 
Method in class org.eclipse.ecf.discovery.ui.model.impl.<A HREF="../org/eclipse/ecf/discovery/ui/model/impl/IServiceInfoImpl.html" title="class in org.eclipse.ecf.discovery.ui.model.impl">IServiceInfoImpl</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/discovery/ui/model/IServiceInfo.html#setEcfLocation(java.net.URI)"><B>setEcfLocation(URI)</B></A> - 
Method in interface org.eclipse.ecf.discovery.ui.model.<A HREF="../org/eclipse/ecf/discovery/ui/model/IServiceInfo.html" title="interface in org.eclipse.ecf.discovery.ui.model">IServiceInfo</A>
<DD>Sets the value of the '<A HREF="../org/eclipse/ecf/discovery/ui/model/IServiceInfo.html#getEcfLocation()"><CODE><em>Ecf Location</em></CODE></A>' attribute.
<DT><A HREF="../org/eclipse/ecf/discovery/ui/model/impl/IServiceInfoImpl.html#setEcfName(java.lang.String)"><B>setEcfName(String)</B></A> - 
Method in class org.eclipse.ecf.discovery.ui.model.impl.<A HREF="../org/eclipse/ecf/discovery/ui/model/impl/IServiceInfoImpl.html" title="class in org.eclipse.ecf.discovery.ui.model.impl">IServiceInfoImpl</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/discovery/ui/model/IServiceInfo.html#setEcfName(java.lang.String)"><B>setEcfName(String)</B></A> - 
Method in interface org.eclipse.ecf.discovery.ui.model.<A HREF="../org/eclipse/ecf/discovery/ui/model/IServiceInfo.html" title="interface in org.eclipse.ecf.discovery.ui.model">IServiceInfo</A>
<DD>Sets the value of the '<A HREF="../org/eclipse/ecf/discovery/ui/model/IServiceInfo.html#getEcfName()"><CODE><em>Ecf Name</em></CODE></A>' attribute.
<DT><A HREF="../org/eclipse/ecf/discovery/ui/model/impl/IServiceTypeIDImpl.html#setEcfNamingAuthority(java.lang.String)"><B>setEcfNamingAuthority(String)</B></A> - 
Method in class org.eclipse.ecf.discovery.ui.model.impl.<A HREF="../org/eclipse/ecf/discovery/ui/model/impl/IServiceTypeIDImpl.html" title="class in org.eclipse.ecf.discovery.ui.model.impl">IServiceTypeIDImpl</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/discovery/ui/model/IServiceTypeID.html#setEcfNamingAuthority(java.lang.String)"><B>setEcfNamingAuthority(String)</B></A> - 
Method in interface org.eclipse.ecf.discovery.ui.model.<A HREF="../org/eclipse/ecf/discovery/ui/model/IServiceTypeID.html" title="interface in org.eclipse.ecf.discovery.ui.model">IServiceTypeID</A>
<DD>Sets the value of the '<A HREF="../org/eclipse/ecf/discovery/ui/model/IServiceTypeID.html#getEcfNamingAuthority()"><CODE><em>Ecf Naming Authority</em></CODE></A>' attribute.
<DT><A HREF="../org/eclipse/ecf/discovery/ui/model/impl/IServiceInfoImpl.html#setEcfPriority(int)"><B>setEcfPriority(int)</B></A> - 
Method in class org.eclipse.ecf.discovery.ui.model.impl.<A HREF="../org/eclipse/ecf/discovery/ui/model/impl/IServiceInfoImpl.html" title="class in org.eclipse.ecf.discovery.ui.model.impl">IServiceInfoImpl</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/discovery/ui/model/IServiceInfo.html#setEcfPriority(int)"><B>setEcfPriority(int)</B></A> - 
Method in interface org.eclipse.ecf.discovery.ui.model.<A HREF="../org/eclipse/ecf/discovery/ui/model/IServiceInfo.html" title="interface in org.eclipse.ecf.discovery.ui.model">IServiceInfo</A>
<DD>Sets the value of the '<A HREF="../org/eclipse/ecf/discovery/ui/model/IServiceInfo.html#getEcfPriority()"><CODE><em>Ecf Priority</em></CODE></A>' attribute.
<DT><A HREF="../org/eclipse/ecf/discovery/ui/model/impl/IServiceIDImpl.html#setEcfServiceID(org.eclipse.ecf.discovery.identity.IServiceID)"><B>setEcfServiceID(IServiceID)</B></A> - 
Method in class org.eclipse.ecf.discovery.ui.model.impl.<A HREF="../org/eclipse/ecf/discovery/ui/model/impl/IServiceIDImpl.html" title="class in org.eclipse.ecf.discovery.ui.model.impl">IServiceIDImpl</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/discovery/ui/model/IServiceID.html#setEcfServiceID(org.eclipse.ecf.discovery.identity.IServiceID)"><B>setEcfServiceID(IServiceID)</B></A> - 
Method in interface org.eclipse.ecf.discovery.ui.model.<A HREF="../org/eclipse/ecf/discovery/ui/model/IServiceID.html" title="interface in org.eclipse.ecf.discovery.ui.model">IServiceID</A>
<DD>Sets the value of the '<A HREF="../org/eclipse/ecf/discovery/ui/model/IServiceID.html#getEcfServiceID()"><CODE><em>Ecf Service ID</em></CODE></A>' attribute.
<DT><A HREF="../org/eclipse/ecf/discovery/ui/model/impl/IServiceInfoImpl.html#setEcfServiceInfo(org.eclipse.ecf.discovery.IServiceInfo)"><B>setEcfServiceInfo(IServiceInfo)</B></A> - 
Method in class org.eclipse.ecf.discovery.ui.model.impl.<A HREF="../org/eclipse/ecf/discovery/ui/model/impl/IServiceInfoImpl.html" title="class in org.eclipse.ecf.discovery.ui.model.impl">IServiceInfoImpl</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/discovery/ui/model/IServiceInfo.html#setEcfServiceInfo(org.eclipse.ecf.discovery.IServiceInfo)"><B>setEcfServiceInfo(IServiceInfo)</B></A> - 
Method in interface org.eclipse.ecf.discovery.ui.model.<A HREF="../org/eclipse/ecf/discovery/ui/model/IServiceInfo.html" title="interface in org.eclipse.ecf.discovery.ui.model">IServiceInfo</A>
<DD>Sets the value of the '<A HREF="../org/eclipse/ecf/discovery/ui/model/IServiceInfo.html#getEcfServiceInfo()"><CODE><em>Ecf Service Info</em></CODE></A>' attribute.
<DT><A HREF="../org/eclipse/ecf/discovery/ui/model/impl/IServiceIDImpl.html#setEcfServiceName(java.lang.String)"><B>setEcfServiceName(String)</B></A> - 
Method in class org.eclipse.ecf.discovery.ui.model.impl.<A HREF="../org/eclipse/ecf/discovery/ui/model/impl/IServiceIDImpl.html" title="class in org.eclipse.ecf.discovery.ui.model.impl">IServiceIDImpl</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/discovery/ui/model/impl/IServiceTypeIDImpl.html#setEcfServiceName(java.lang.String)"><B>setEcfServiceName(String)</B></A> - 
Method in class org.eclipse.ecf.discovery.ui.model.impl.<A HREF="../org/eclipse/ecf/discovery/ui/model/impl/IServiceTypeIDImpl.html" title="class in org.eclipse.ecf.discovery.ui.model.impl">IServiceTypeIDImpl</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/discovery/ui/model/IServiceID.html#setEcfServiceName(java.lang.String)"><B>setEcfServiceName(String)</B></A> - 
Method in interface org.eclipse.ecf.discovery.ui.model.<A HREF="../org/eclipse/ecf/discovery/ui/model/IServiceID.html" title="interface in org.eclipse.ecf.discovery.ui.model">IServiceID</A>
<DD>Sets the value of the '<A HREF="../org/eclipse/ecf/discovery/ui/model/IServiceID.html#getEcfServiceName()"><CODE><em>Ecf Service Name</em></CODE></A>' attribute.
<DT><A HREF="../org/eclipse/ecf/discovery/ui/model/IServiceTypeID.html#setEcfServiceName(java.lang.String)"><B>setEcfServiceName(String)</B></A> - 
Method in interface org.eclipse.ecf.discovery.ui.model.<A HREF="../org/eclipse/ecf/discovery/ui/model/IServiceTypeID.html" title="interface in org.eclipse.ecf.discovery.ui.model">IServiceTypeID</A>
<DD>Sets the value of the '<A HREF="../org/eclipse/ecf/discovery/ui/model/IServiceTypeID.html#getEcfServiceName()"><CODE><em>Ecf Service Name</em></CODE></A>' attribute.
<DT><A HREF="../org/eclipse/ecf/discovery/ui/model/impl/IServiceTypeIDImpl.html#setEcfServiceTypeID(org.eclipse.ecf.discovery.identity.IServiceTypeID)"><B>setEcfServiceTypeID(IServiceTypeID)</B></A> - 
Method in class org.eclipse.ecf.discovery.ui.model.impl.<A HREF="../org/eclipse/ecf/discovery/ui/model/impl/IServiceTypeIDImpl.html" title="class in org.eclipse.ecf.discovery.ui.model.impl">IServiceTypeIDImpl</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/discovery/ui/model/IServiceTypeID.html#setEcfServiceTypeID(org.eclipse.ecf.discovery.identity.IServiceTypeID)"><B>setEcfServiceTypeID(IServiceTypeID)</B></A> - 
Method in interface org.eclipse.ecf.discovery.ui.model.<A HREF="../org/eclipse/ecf/discovery/ui/model/IServiceTypeID.html" title="interface in org.eclipse.ecf.discovery.ui.model">IServiceTypeID</A>
<DD>Sets the value of the '<A HREF="../org/eclipse/ecf/discovery/ui/model/IServiceTypeID.html#getEcfServiceTypeID()"><CODE><em>Ecf Service Type ID</em></CODE></A>' attribute.
<DT><A HREF="../org/eclipse/ecf/discovery/ui/model/impl/IServiceInfoImpl.html#setEcfWeight(int)"><B>setEcfWeight(int)</B></A> - 
Method in class org.eclipse.ecf.discovery.ui.model.impl.<A HREF="../org/eclipse/ecf/discovery/ui/model/impl/IServiceInfoImpl.html" title="class in org.eclipse.ecf.discovery.ui.model.impl">IServiceInfoImpl</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/discovery/ui/model/IServiceInfo.html#setEcfWeight(int)"><B>setEcfWeight(int)</B></A> - 
Method in interface org.eclipse.ecf.discovery.ui.model.<A HREF="../org/eclipse/ecf/discovery/ui/model/IServiceInfo.html" title="interface in org.eclipse.ecf.discovery.ui.model">IServiceInfo</A>
<DD>Sets the value of the '<A HREF="../org/eclipse/ecf/discovery/ui/model/IServiceInfo.html#getEcfWeight()"><CODE><em>Ecf Weight</em></CODE></A>' attribute.
<DT><A HREF="../org/eclipse/ecf/core/identity/StringID.html#setEmptyNamespace()"><B>setEmptyNamespace()</B></A> - 
Method in class org.eclipse.ecf.core.identity.<A HREF="../org/eclipse/ecf/core/identity/StringID.html" title="class in org.eclipse.ecf.core.identity">StringID</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/presence/ui/chatroom/ChatRoomManagerView.html#setEnabled(boolean)"><B>setEnabled(boolean)</B></A> - 
Method in class org.eclipse.ecf.presence.ui.chatroom.<A HREF="../org/eclipse/ecf/presence/ui/chatroom/ChatRoomManagerView.html" title="class in org.eclipse.ecf.presence.ui.chatroom">ChatRoomManagerView</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/presence/chatroom/IChatRoomContainerOptionsAdapter.html#setEncoding(java.lang.String)"><B>setEncoding(String)</B></A> - 
Method in interface org.eclipse.ecf.presence.chatroom.<A HREF="../org/eclipse/ecf/presence/chatroom/IChatRoomContainerOptionsAdapter.html" title="interface in org.eclipse.ecf.presence.chatroom">IChatRoomContainerOptionsAdapter</A>
<DD>Set encoding for chat room manager that supports IChatRoomOptions
<DT><A HREF="../org/eclipse/ecf/osgi/services/discovery/local/OneInterfaceSED.html#setEndpointInterface(java.lang.String)"><B>setEndpointInterface(String)</B></A> - 
Method in class org.eclipse.ecf.osgi.services.discovery.local.<A HREF="../org/eclipse/ecf/osgi/services/discovery/local/OneInterfaceSED.html" title="class in org.eclipse.ecf.osgi.services.discovery.local">OneInterfaceSED</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/sharedobject/util/IQueueEnqueue.html#setEnqueueProcessor(org.eclipse.ecf.core.sharedobject.util.IEnqueueProcessor)"><B>setEnqueueProcessor(IEnqueueProcessor)</B></A> - 
Method in interface org.eclipse.ecf.core.sharedobject.util.<A HREF="../org/eclipse/ecf/core/sharedobject/util/IQueueEnqueue.html" title="interface in org.eclipse.ecf.core.sharedobject.util">IQueueEnqueue</A>
<DD>Set enqueue processor for this queue.
<DT><A HREF="../org/eclipse/ecf/core/sharedobject/util/QueueEnqueueImpl.html#setEnqueueProcessor(org.eclipse.ecf.core.sharedobject.util.IEnqueueProcessor)"><B>setEnqueueProcessor(IEnqueueProcessor)</B></A> - 
Method in class org.eclipse.ecf.core.sharedobject.util.<A HREF="../org/eclipse/ecf/core/sharedobject/util/QueueEnqueueImpl.html" title="class in org.eclipse.ecf.core.sharedobject.util">QueueEnqueueImpl</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/status/SerializableStatus.html#setException(java.lang.Throwable)"><B>setException(Throwable)</B></A> - 
Method in class org.eclipse.ecf.core.status.<A HREF="../org/eclipse/ecf/core/status/SerializableStatus.html" title="class in org.eclipse.ecf.core.status">SerializableStatus</A>
<DD>Sets the exception.
<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/browse/AbstractFileSystemBrowser.html#setException(java.lang.Exception)"><B>setException(Exception)</B></A> - 
Method in class org.eclipse.ecf.provider.filetransfer.browse.<A HREF="../org/eclipse/ecf/provider/filetransfer/browse/AbstractFileSystemBrowser.html" title="class in org.eclipse.ecf.provider.filetransfer.browse">AbstractFileSystemBrowser</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/filetransfer/ui/actions/AbstractFileSendAction.html#setExceptionHandler(org.eclipse.ecf.core.util.IExceptionHandler)"><B>setExceptionHandler(IExceptionHandler)</B></A> - 
Method in class org.eclipse.ecf.filetransfer.ui.actions.<A HREF="../org/eclipse/ecf/filetransfer/ui/actions/AbstractFileSendAction.html" title="class in org.eclipse.ecf.filetransfer.ui.actions">AbstractFileSendAction</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/retrieve/AbstractRetrieveFileTransfer.html#setFileLength(long)"><B>setFileLength(long)</B></A> - 
Method in class org.eclipse.ecf.provider.filetransfer.retrieve.<A HREF="../org/eclipse/ecf/provider/filetransfer/retrieve/AbstractRetrieveFileTransfer.html" title="class in org.eclipse.ecf.provider.filetransfer.retrieve">AbstractRetrieveFileTransfer</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/filetransfer/ui/actions/AbstractFileSendAction.html#setFileToSend(java.io.File)"><B>setFileToSend(File)</B></A> - 
Method in class org.eclipse.ecf.filetransfer.ui.actions.<A HREF="../org/eclipse/ecf/filetransfer/ui/actions/AbstractFileSendAction.html" title="class in org.eclipse.ecf.filetransfer.ui.actions">AbstractFileSendAction</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/filetransfer/FileTransferJob.html#setFileTransfer(org.eclipse.ecf.filetransfer.IFileTransfer)"><B>setFileTransfer(IFileTransfer)</B></A> - 
Method in class org.eclipse.ecf.filetransfer.<A HREF="../org/eclipse/ecf/filetransfer/FileTransferJob.html" title="class in org.eclipse.ecf.filetransfer">FileTransferJob</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/filetransfer/ui/actions/AbstractFileSendAction.html#setFileTransferInfo(org.eclipse.ecf.filetransfer.IFileTransferInfo)"><B>setFileTransferInfo(IFileTransferInfo)</B></A> - 
Method in class org.eclipse.ecf.filetransfer.ui.actions.<A HREF="../org/eclipse/ecf/filetransfer/ui/actions/AbstractFileSendAction.html" title="class in org.eclipse.ecf.filetransfer.ui.actions">AbstractFileSendAction</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/filetransfer/events/IOutgoingFileTransferResponseEvent.html#setFileTransferJob(org.eclipse.ecf.filetransfer.FileTransferJob)"><B>setFileTransferJob(FileTransferJob)</B></A> - 
Method in interface org.eclipse.ecf.filetransfer.events.<A HREF="../org/eclipse/ecf/filetransfer/events/IOutgoingFileTransferResponseEvent.html" title="interface in org.eclipse.ecf.filetransfer.events">IOutgoingFileTransferResponseEvent</A>
<DD>Set the <A HREF="../org/eclipse/ecf/filetransfer/FileTransferJob.html" title="class in org.eclipse.ecf.filetransfer"><CODE>FileTransferJob</CODE></A> to use for the actual file transfer.
<DT><A HREF="../org/eclipse/ecf/filetransfer/ui/actions/AbstractFileSendAction.html#setFileTransferListener(org.eclipse.ecf.filetransfer.IFileTransferListener)"><B>setFileTransferListener(IFileTransferListener)</B></A> - 
Method in class org.eclipse.ecf.filetransfer.ui.actions.<A HREF="../org/eclipse/ecf/filetransfer/ui/actions/AbstractFileSendAction.html" title="class in org.eclipse.ecf.filetransfer.ui.actions">AbstractFileSendAction</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/filetransfer/ui/actions/AbstractFileSendAction.html#setFileTransferOptions(java.util.Map)"><B>setFileTransferOptions(Map)</B></A> - 
Method in class org.eclipse.ecf.filetransfer.ui.actions.<A HREF="../org/eclipse/ecf/filetransfer/ui/actions/AbstractFileSendAction.html" title="class in org.eclipse.ecf.filetransfer.ui.actions">AbstractFileSendAction</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/filetransfer/FileTransferJob.html#setFileTransferRunnable(org.eclipse.ecf.filetransfer.IFileTransferRunnable)"><B>setFileTransferRunnable(IFileTransferRunnable)</B></A> - 
Method in class org.eclipse.ecf.filetransfer.<A HREF="../org/eclipse/ecf/filetransfer/FileTransferJob.html" title="class in org.eclipse.ecf.filetransfer">FileTransferJob</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/filetransfer/ui/FileTransfersView.html#setFocus()"><B>setFocus()</B></A> - 
Method in class org.eclipse.ecf.filetransfer.ui.<A HREF="../org/eclipse/ecf/filetransfer/ui/FileTransfersView.html" title="class in org.eclipse.ecf.filetransfer.ui">FileTransfersView</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/presence/ui/chatroom/ChatRoomManagerView.html#setFocus()"><B>setFocus()</B></A> - 
Method in class org.eclipse.ecf.presence.ui.chatroom.<A HREF="../org/eclipse/ecf/presence/ui/chatroom/ChatRoomManagerView.html" title="class in org.eclipse.ecf.presence.ui.chatroom">ChatRoomManagerView</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/presence/ui/MessagesView.html#setFocus()"><B>setFocus()</B></A> - 
Method in class org.eclipse.ecf.presence.ui.<A HREF="../org/eclipse/ecf/presence/ui/MessagesView.html" title="class in org.eclipse.ecf.presence.ui">MessagesView</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/presence/ui/MultiRosterView.html#setFocus()"><B>setFocus()</B></A> - 
Method in class org.eclipse.ecf.presence.ui.<A HREF="../org/eclipse/ecf/presence/ui/MultiRosterView.html" title="class in org.eclipse.ecf.presence.ui">MultiRosterView</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/presence/ui/UserSearchView.html#setFocus()"><B>setFocus()</B></A> - 
Method in class org.eclipse.ecf.presence.ui.<A HREF="../org/eclipse/ecf/presence/ui/UserSearchView.html" title="class in org.eclipse.ecf.presence.ui">UserSearchView</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/generic/ContainerMessage.html#setFromContainerID(org.eclipse.ecf.core.identity.ID)"><B>setFromContainerID(ID)</B></A> - 
Method in class org.eclipse.ecf.provider.generic.<A HREF="../org/eclipse/ecf/provider/generic/ContainerMessage.html" title="class in org.eclipse.ecf.provider.generic">ContainerMessage</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/ui/hyperlink/AbstractURLHyperlink.html#setHyperlinkText(java.lang.String)"><B>setHyperlinkText(String)</B></A> - 
Method in class org.eclipse.ecf.ui.hyperlink.<A HREF="../org/eclipse/ecf/ui/hyperlink/AbstractURLHyperlink.html" title="class in org.eclipse.ecf.ui.hyperlink">AbstractURLHyperlink</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/sharedobject/ReplicaSharedObjectDescription.html#setID(org.eclipse.ecf.core.identity.ID)"><B>setID(ID)</B></A> - 
Method in class org.eclipse.ecf.core.sharedobject.<A HREF="../org/eclipse/ecf/core/sharedobject/ReplicaSharedObjectDescription.html" title="class in org.eclipse.ecf.core.sharedobject">ReplicaSharedObjectDescription</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/remoteservice/generic/RemoteServiceReferenceImpl.html#setInactive()"><B>setInactive()</B></A> - 
Method in class org.eclipse.ecf.provider.remoteservice.generic.<A HREF="../org/eclipse/ecf/provider/remoteservice/generic/RemoteServiceReferenceImpl.html" title="class in org.eclipse.ecf.provider.remoteservice.generic">RemoteServiceReferenceImpl</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/outgoing/AbstractOutgoingFileTransfer.html#setInputStream(java.io.InputStream)"><B>setInputStream(InputStream)</B></A> - 
Method in class org.eclipse.ecf.provider.filetransfer.outgoing.<A HREF="../org/eclipse/ecf/provider/filetransfer/outgoing/AbstractOutgoingFileTransfer.html" title="class in org.eclipse.ecf.provider.filetransfer.outgoing">AbstractOutgoingFileTransfer</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/retrieve/AbstractRetrieveFileTransfer.html#setInputStream(java.io.InputStream)"><B>setInputStream(InputStream)</B></A> - 
Method in class org.eclipse.ecf.provider.filetransfer.retrieve.<A HREF="../org/eclipse/ecf/provider/filetransfer/retrieve/AbstractRetrieveFileTransfer.html" title="class in org.eclipse.ecf.provider.filetransfer.retrieve">AbstractRetrieveFileTransfer</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/osgi/services/discovery/local/OneInterfaceSED.html#setInterfaceName(java.lang.String)"><B>setInterfaceName(String)</B></A> - 
Method in class org.eclipse.ecf.osgi.services.discovery.local.<A HREF="../org/eclipse/ecf/osgi/services/discovery/local/OneInterfaceSED.html" title="class in org.eclipse.ecf.osgi.services.discovery.local">OneInterfaceSED</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/util/PollingInputStream.html#setIsCancellable(boolean)"><B>setIsCancellable(boolean)</B></A> - 
Method in class org.eclipse.ecf.provider.filetransfer.util.<A HREF="../org/eclipse/ecf/provider/filetransfer/util/PollingInputStream.html" title="class in org.eclipse.ecf.provider.filetransfer.util">PollingInputStream</A>
<DD>Called to set whether cancellation will be checked by this stream.
<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/events/socket/AbstractSocketWrapper.html#setKeepAlive(boolean)"><B>setKeepAlive(boolean)</B></A> - 
Method in class org.eclipse.ecf.provider.filetransfer.events.socket.<A HREF="../org/eclipse/ecf/provider/filetransfer/events/socket/AbstractSocketWrapper.html" title="class in org.eclipse.ecf.provider.filetransfer.events.socket">AbstractSocketWrapper</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/filetransfer/IRemoteFileInfo.html#setLastModified(long)"><B>setLastModified(long)</B></A> - 
Method in interface org.eclipse.ecf.filetransfer.<A HREF="../org/eclipse/ecf/filetransfer/IRemoteFileInfo.html" title="interface in org.eclipse.ecf.filetransfer">IRemoteFileInfo</A>
<DD>Set the last modified time for this remote file info.
<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/retrieve/AbstractRetrieveFileTransfer.html#setLastModifiedTime(long)"><B>setLastModifiedTime(long)</B></A> - 
Method in class org.eclipse.ecf.provider.filetransfer.retrieve.<A HREF="../org/eclipse/ecf/provider/filetransfer/retrieve/AbstractRetrieveFileTransfer.html" title="class in org.eclipse.ecf.provider.filetransfer.retrieve">AbstractRetrieveFileTransfer</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/sync/doc/DocumentChangeMessage.html#setLengthOfReplacedText(int)"><B>setLengthOfReplacedText(int)</B></A> - 
Method in class org.eclipse.ecf.sync.doc.<A HREF="../org/eclipse/ecf/sync/doc/DocumentChangeMessage.html" title="class in org.eclipse.ecf.sync.doc">DocumentChangeMessage</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/datashare/IAbstractChannel.html#setListener(org.eclipse.ecf.datashare.IChannelListener)"><B>setListener(IChannelListener)</B></A> - 
Method in interface org.eclipse.ecf.datashare.<A HREF="../org/eclipse/ecf/datashare/IAbstractChannel.html" title="interface in org.eclipse.ecf.datashare">IAbstractChannel</A>
<DD>Set listener to new IChannelListener instance
<DT><A HREF="../org/eclipse/ecf/provider/datashare/BaseChannel.html#setListener(org.eclipse.ecf.datashare.IChannelListener)"><B>setListener(IChannelListener)</B></A> - 
Method in class org.eclipse.ecf.provider.datashare.<A HREF="../org/eclipse/ecf/provider/datashare/BaseChannel.html" title="class in org.eclipse.ecf.provider.datashare">BaseChannel</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/datashare/nio/NIOChannel.html#setListener(org.eclipse.ecf.datashare.IChannelListener)"><B>setListener(IChannelListener)</B></A> - 
Method in class org.eclipse.ecf.provider.datashare.nio.<A HREF="../org/eclipse/ecf/provider/datashare/nio/NIOChannel.html" title="class in org.eclipse.ecf.provider.datashare.nio">NIOChannel</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/internal/docshare/Activator.html#setListenerActive(boolean)"><B>setListenerActive(boolean)</B></A> - 
Method in class org.eclipse.ecf.internal.docshare.<A HREF="../org/eclipse/ecf/internal/docshare/Activator.html" title="class in org.eclipse.ecf.internal.docshare">Activator</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/osgi/services/discovery/local/FileBasedDiscoveryImpl.html#setLogService(org.osgi.service.log.LogService)"><B>setLogService(LogService)</B></A> - 
Static method in class org.eclipse.ecf.osgi.services.discovery.local.<A HREF="../org/eclipse/ecf/osgi/services/discovery/local/FileBasedDiscoveryImpl.html" title="class in org.eclipse.ecf.osgi.services.discovery.local">FileBasedDiscoveryImpl</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/filetransfer/IFileTransferRateControl.html#setMaxDownloadSpeed(long)"><B>setMaxDownloadSpeed(long)</B></A> - 
Method in interface org.eclipse.ecf.filetransfer.<A HREF="../org/eclipse/ecf/filetransfer/IFileTransferRateControl.html" title="interface in org.eclipse.ecf.filetransfer">IFileTransferRateControl</A>
<DD>Set maximum download speed in bytes/second.
<DT><A HREF="../org/eclipse/ecf/provider/generic/SOContainer.html#setMaxGroupMembers(int)"><B>setMaxGroupMembers(int)</B></A> - 
Method in class org.eclipse.ecf.provider.generic.<A HREF="../org/eclipse/ecf/provider/generic/SOContainer.html" title="class in org.eclipse.ecf.provider.generic">SOContainer</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/filetransfer/IFileTransferRateControl.html#setMaxUploadSpeed(long)"><B>setMaxUploadSpeed(long)</B></A> - 
Method in interface org.eclipse.ecf.filetransfer.<A HREF="../org/eclipse/ecf/filetransfer/IFileTransferRateControl.html" title="interface in org.eclipse.ecf.filetransfer">IFileTransferRateControl</A>
<DD>Set maximum upload speed in bytes/second.
<DT><A HREF="../org/eclipse/ecf/core/status/SerializableStatus.html#setMessage(java.lang.String)"><B>setMessage(String)</B></A> - 
Method in class org.eclipse.ecf.core.status.<A HREF="../org/eclipse/ecf/core/status/SerializableStatus.html" title="class in org.eclipse.ecf.core.status">SerializableStatus</A>
<DD>Sets the message.
<DT><A HREF="../org/eclipse/ecf/presence/ui/chatroom/ChatRoomManagerView.html#setMessageRenderer(org.eclipse.ecf.presence.ui.chatroom.IMessageRenderer)"><B>setMessageRenderer(IMessageRenderer)</B></A> - 
Method in class org.eclipse.ecf.presence.ui.chatroom.<A HREF="../org/eclipse/ecf/presence/ui/chatroom/ChatRoomManagerView.html" title="class in org.eclipse.ecf.presence.ui.chatroom">ChatRoomManagerView</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectMsg.html#setMethod(java.lang.String)"><B>setMethod(String)</B></A> - 
Method in class org.eclipse.ecf.core.sharedobject.<A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectMsg.html" title="class in org.eclipse.ecf.core.sharedobject">SharedObjectMsg</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/security/NameCallback.html#setName(java.lang.String)"><B>setName(String)</B></A> - 
Method in class org.eclipse.ecf.core.security.<A HREF="../org/eclipse/ecf/core/security/NameCallback.html" title="class in org.eclipse.ecf.core.security">NameCallback</A>
<DD>Set the retrieved name.
<DT><A HREF="../org/eclipse/ecf/core/user/User.html#setName(java.lang.String)"><B>setName(String)</B></A> - 
Method in class org.eclipse.ecf.core.user.<A HREF="../org/eclipse/ecf/core/user/User.html" title="class in org.eclipse.ecf.core.user">User</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/discovery/ui/model/IHost.html#setName(java.lang.String)"><B>setName(String)</B></A> - 
Method in interface org.eclipse.ecf.discovery.ui.model.<A HREF="../org/eclipse/ecf/discovery/ui/model/IHost.html" title="interface in org.eclipse.ecf.discovery.ui.model">IHost</A>
<DD>Sets the value of the '<A HREF="../org/eclipse/ecf/discovery/ui/model/IHost.html#getName()"><CODE><em>Name</em></CODE></A>' attribute.
<DT><A HREF="../org/eclipse/ecf/discovery/ui/model/impl/IHostImpl.html#setName(java.lang.String)"><B>setName(String)</B></A> - 
Method in class org.eclipse.ecf.discovery.ui.model.impl.<A HREF="../org/eclipse/ecf/discovery/ui/model/impl/IHostImpl.html" title="class in org.eclipse.ecf.discovery.ui.model.impl">IHostImpl</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/filetransfer/IRemoteFileInfo.html#setName(java.lang.String)"><B>setName(String)</B></A> - 
Method in interface org.eclipse.ecf.filetransfer.<A HREF="../org/eclipse/ecf/filetransfer/IRemoteFileInfo.html" title="interface in org.eclipse.ecf.filetransfer">IRemoteFileInfo</A>
<DD>Set the underlying name for this remote file info.
<DT><A HREF="../org/eclipse/ecf/core/user/User.html#setNickname(java.lang.String)"><B>setNickname(String)</B></A> - 
Method in class org.eclipse.ecf.core.user.<A HREF="../org/eclipse/ecf/core/user/User.html" title="class in org.eclipse.ecf.core.user">User</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/security/ObjectCallback.html#setObject(java.lang.Object)"><B>setObject(Object)</B></A> - 
Method in class org.eclipse.ecf.core.security.<A HREF="../org/eclipse/ecf/core/security/ObjectCallback.html" title="class in org.eclipse.ecf.core.security">ObjectCallback</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/sync/doc/DocumentChangeMessage.html#setOffset(int)"><B>setOffset(int)</B></A> - 
Method in class org.eclipse.ecf.sync.doc.<A HREF="../org/eclipse/ecf/sync/doc/DocumentChangeMessage.html" title="class in org.eclipse.ecf.sync.doc">DocumentChangeMessage</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/events/socket/AbstractSocketWrapper.html#setOOBInline(boolean)"><B>setOOBInline(boolean)</B></A> - 
Method in class org.eclipse.ecf.provider.filetransfer.events.socket.<A HREF="../org/eclipse/ecf/provider/filetransfer/events/socket/AbstractSocketWrapper.html" title="class in org.eclipse.ecf.provider.filetransfer.events.socket">AbstractSocketWrapper</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/outgoing/AbstractOutgoingFileTransfer.html#setOutputStream(java.io.OutputStream)"><B>setOutputStream(OutputStream)</B></A> - 
Method in class org.eclipse.ecf.provider.filetransfer.outgoing.<A HREF="../org/eclipse/ecf/provider/filetransfer/outgoing/AbstractOutgoingFileTransfer.html" title="class in org.eclipse.ecf.provider.filetransfer.outgoing">AbstractOutgoingFileTransfer</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/retrieve/AbstractRetrieveFileTransfer.html#setOutputStream(java.io.OutputStream)"><B>setOutputStream(OutputStream)</B></A> - 
Method in class org.eclipse.ecf.provider.filetransfer.retrieve.<A HREF="../org/eclipse/ecf/provider/filetransfer/retrieve/AbstractRetrieveFileTransfer.html" title="class in org.eclipse.ecf.provider.filetransfer.retrieve">AbstractRetrieveFileTransfer</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectMsg.html#setParameters(java.lang.Object[])"><B>setParameters(Object[])</B></A> - 
Method in class org.eclipse.ecf.core.sharedobject.<A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectMsg.html" title="class in org.eclipse.ecf.core.sharedobject">SharedObjectMsg</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/remoteservice/util/RemoteCallMethod.html#setParameters(java.lang.reflect.Method, java.lang.Object[])"><B>setParameters(Method, Object[])</B></A> - 
Method in class org.eclipse.ecf.remoteservice.util.<A HREF="../org/eclipse/ecf/remoteservice/util/RemoteCallMethod.html" title="class in org.eclipse.ecf.remoteservice.util">RemoteCallMethod</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/remoteservice/client/AbstractClientContainer.html#setParameterSerializer(org.eclipse.ecf.remoteservice.client.IRemoteCallParameterSerializer)"><B>setParameterSerializer(IRemoteCallParameterSerializer)</B></A> - 
Method in class org.eclipse.ecf.remoteservice.client.<A HREF="../org/eclipse/ecf/remoteservice/client/AbstractClientContainer.html" title="class in org.eclipse.ecf.remoteservice.client">AbstractClientContainer</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/remoteservice/client/IRemoteServiceClientContainerAdapter.html#setParameterSerializer(org.eclipse.ecf.remoteservice.client.IRemoteCallParameterSerializer)"><B>setParameterSerializer(IRemoteCallParameterSerializer)</B></A> - 
Method in interface org.eclipse.ecf.remoteservice.client.<A HREF="../org/eclipse/ecf/remoteservice/client/IRemoteServiceClientContainerAdapter.html" title="interface in org.eclipse.ecf.remoteservice.client">IRemoteServiceClientContainerAdapter</A>
<DD>Set the remote call parameter serializer.
<DT><A HREF="../org/eclipse/ecf/server/generic/app/NamedGroup.html#setParent(org.eclipse.ecf.server.generic.app.Connector)"><B>setParent(Connector)</B></A> - 
Method in class org.eclipse.ecf.server.generic.app.<A HREF="../org/eclipse/ecf/server/generic/app/NamedGroup.html" title="class in org.eclipse.ecf.server.generic.app">NamedGroup</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/discovery/ui/model/provider/ModelItemProviderAdapterFactory.html#setParentAdapterFactory(org.eclipse.emf.edit.provider.ComposedAdapterFactory)"><B>setParentAdapterFactory(ComposedAdapterFactory)</B></A> - 
Method in class org.eclipse.ecf.discovery.ui.model.provider.<A HREF="../org/eclipse/ecf/discovery/ui/model/provider/ModelItemProviderAdapterFactory.html" title="class in org.eclipse.ecf.discovery.ui.model.provider">ModelItemProviderAdapterFactory</A>
<DD>This sets the composed adapter factory that contains this factory.
<DT><A HREF="../org/eclipse/ecf/core/security/PassphraseCallback.html#setPassphrase(java.lang.String)"><B>setPassphrase(String)</B></A> - 
Method in class org.eclipse.ecf.core.security.<A HREF="../org/eclipse/ecf/core/security/PassphraseCallback.html" title="class in org.eclipse.ecf.core.security">PassphraseCallback</A>
<DD>Set the retrieved passphrase.
<DT><A HREF="../org/eclipse/ecf/core/security/PasswordCallback.html#setPassword(java.lang.String)"><B>setPassword(String)</B></A> - 
Method in class org.eclipse.ecf.core.security.<A HREF="../org/eclipse/ecf/core/security/PasswordCallback.html" title="class in org.eclipse.ecf.core.security">PasswordCallback</A>
<DD>Set the retrieved password.
<DT><A HREF="../org/eclipse/ecf/core/status/SerializableStatus.html#setPlugin(java.lang.String)"><B>setPlugin(String)</B></A> - 
Method in class org.eclipse.ecf.core.status.<A HREF="../org/eclipse/ecf/core/status/SerializableStatus.html" title="class in org.eclipse.ecf.core.status">SerializableStatus</A>
<DD>Sets the plug-in id.
<DT><A HREF="../org/eclipse/ecf/presence/roster/RosterEntry.html#setPresence(org.eclipse.ecf.presence.IPresence)"><B>setPresence(IPresence)</B></A> - 
Method in class org.eclipse.ecf.presence.roster.<A HREF="../org/eclipse/ecf/presence/roster/RosterEntry.html" title="class in org.eclipse.ecf.presence.roster">RosterEntry</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/osgi/services/discovery/IRemoteServiceEndpointDescription.html#setProperties(java.util.Map)"><B>setProperties(Map)</B></A> - 
Method in interface org.eclipse.ecf.osgi.services.discovery.<A HREF="../org/eclipse/ecf/osgi/services/discovery/IRemoteServiceEndpointDescription.html" title="interface in org.eclipse.ecf.osgi.services.discovery">IRemoteServiceEndpointDescription</A>
<DD>Set the properties for this endpoint description.
<DT><A HREF="../org/eclipse/ecf/osgi/services/discovery/local/ServiceEndpointDescriptionImpl.html#setProperties(java.util.Map)"><B>setProperties(Map)</B></A> - 
Method in class org.eclipse.ecf.osgi.services.discovery.local.<A HREF="../org/eclipse/ecf/osgi/services/discovery/local/ServiceEndpointDescriptionImpl.html" title="class in org.eclipse.ecf.osgi.services.discovery.local">ServiceEndpointDescriptionImpl</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/osgi/services/discovery/RemoteServiceEndpointDescription.html#setProperties(java.util.Map)"><B>setProperties(Map)</B></A> - 
Method in class org.eclipse.ecf.osgi.services.discovery.<A HREF="../org/eclipse/ecf/osgi/services/discovery/RemoteServiceEndpointDescription.html" title="class in org.eclipse.ecf.osgi.services.discovery">RemoteServiceEndpointDescription</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/comm/tcp/Client.html#setProperties(java.util.Map)"><B>setProperties(Map)</B></A> - 
Method in class org.eclipse.ecf.provider.comm.tcp.<A HREF="../org/eclipse/ecf/provider/comm/tcp/Client.html" title="class in org.eclipse.ecf.provider.comm.tcp">Client</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/remoteservice/generic/RemoteServiceRegistrationImpl.html#setProperties(java.util.Dictionary)"><B>setProperties(Dictionary)</B></A> - 
Method in class org.eclipse.ecf.provider.remoteservice.generic.<A HREF="../org/eclipse/ecf/provider/remoteservice/generic/RemoteServiceRegistrationImpl.html" title="class in org.eclipse.ecf.provider.remoteservice.generic">RemoteServiceRegistrationImpl</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/remoteservice/client/RemoteServiceClientRegistration.html#setProperties(java.util.Dictionary)"><B>setProperties(Dictionary)</B></A> - 
Method in class org.eclipse.ecf.remoteservice.client.<A HREF="../org/eclipse/ecf/remoteservice/client/RemoteServiceClientRegistration.html" title="class in org.eclipse.ecf.remoteservice.client">RemoteServiceClientRegistration</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/remoteservice/IRemoteServiceRegistration.html#setProperties(java.util.Dictionary)"><B>setProperties(Dictionary)</B></A> - 
Method in interface org.eclipse.ecf.remoteservice.<A HREF="../org/eclipse/ecf/remoteservice/IRemoteServiceRegistration.html" title="interface in org.eclipse.ecf.remoteservice">IRemoteServiceRegistration</A>
<DD>Set the properties for the registered service
<DT><A HREF="../org/eclipse/ecf/discovery/IServiceProperties.html#setProperty(java.lang.String, java.lang.Object)"><B>setProperty(String, Object)</B></A> - 
Method in interface org.eclipse.ecf.discovery.<A HREF="../org/eclipse/ecf/discovery/IServiceProperties.html" title="interface in org.eclipse.ecf.discovery">IServiceProperties</A>
<DD>Set property as Object.
<DT><A HREF="../org/eclipse/ecf/discovery/ServiceProperties.html#setProperty(java.lang.String, java.lang.Object)"><B>setProperty(String, Object)</B></A> - 
Method in class org.eclipse.ecf.discovery.<A HREF="../org/eclipse/ecf/discovery/ServiceProperties.html" title="class in org.eclipse.ecf.discovery">ServiceProperties</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/discovery/IServiceProperties.html#setPropertyBytes(java.lang.String, byte[])"><B>setPropertyBytes(String, byte[])</B></A> - 
Method in interface org.eclipse.ecf.discovery.<A HREF="../org/eclipse/ecf/discovery/IServiceProperties.html" title="interface in org.eclipse.ecf.discovery">IServiceProperties</A>
<DD>Set property as byte [].
<DT><A HREF="../org/eclipse/ecf/discovery/ServiceProperties.html#setPropertyBytes(java.lang.String, byte[])"><B>setPropertyBytes(String, byte[])</B></A> - 
Method in class org.eclipse.ecf.discovery.<A HREF="../org/eclipse/ecf/discovery/ServiceProperties.html" title="class in org.eclipse.ecf.discovery">ServiceProperties</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/discovery/IServiceProperties.html#setPropertyString(java.lang.String, java.lang.String)"><B>setPropertyString(String, String)</B></A> - 
Method in interface org.eclipse.ecf.discovery.<A HREF="../org/eclipse/ecf/discovery/IServiceProperties.html" title="interface in org.eclipse.ecf.discovery">IServiceProperties</A>
<DD>Set property as String.
<DT><A HREF="../org/eclipse/ecf/discovery/ServiceProperties.html#setPropertyString(java.lang.String, java.lang.String)"><B>setPropertyString(String, String)</B></A> - 
Method in class org.eclipse.ecf.discovery.<A HREF="../org/eclipse/ecf/discovery/ServiceProperties.html" title="class in org.eclipse.ecf.discovery">ServiceProperties</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/ui/hyperlink/AbstractURLHyperlinkDetector.html#setProtocols(java.lang.String[])"><B>setProtocols(String[])</B></A> - 
Method in class org.eclipse.ecf.ui.hyperlink.<A HREF="../org/eclipse/ecf/ui/hyperlink/AbstractURLHyperlinkDetector.html" title="class in org.eclipse.ecf.ui.hyperlink">AbstractURLHyperlinkDetector</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/osgi/services/discovery/local/ServiceEndpointDescriptionImpl.html#setProvidedInterfaces(java.util.Collection)"><B>setProvidedInterfaces(Collection)</B></A> - 
Method in class org.eclipse.ecf.osgi.services.discovery.local.<A HREF="../org/eclipse/ecf/osgi/services/discovery/local/ServiceEndpointDescriptionImpl.html" title="class in org.eclipse.ecf.osgi.services.discovery.local">ServiceEndpointDescriptionImpl</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/filetransfer/IRemoteFileSystemBrowserContainerAdapter.html#setProxy(org.eclipse.ecf.core.util.Proxy)"><B>setProxy(Proxy)</B></A> - 
Method in interface org.eclipse.ecf.filetransfer.<A HREF="../org/eclipse/ecf/filetransfer/IRemoteFileSystemBrowserContainerAdapter.html" title="interface in org.eclipse.ecf.filetransfer">IRemoteFileSystemBrowserContainerAdapter</A>
<DD>Set proxy for use upon subsequent
 <A HREF="../org/eclipse/ecf/filetransfer/IRemoteFileSystemBrowserContainerAdapter.html#sendBrowseRequest(org.eclipse.ecf.filetransfer.identity.IFileID, org.eclipse.ecf.filetransfer.IRemoteFileSystemListener)"><CODE>IRemoteFileSystemBrowserContainerAdapter.sendBrowseRequest(IFileID, IRemoteFileSystemListener)</CODE></A>.
<DT><A HREF="../org/eclipse/ecf/filetransfer/IRetrieveFileTransferContainerAdapter.html#setProxy(org.eclipse.ecf.core.util.Proxy)"><B>setProxy(Proxy)</B></A> - 
Method in interface org.eclipse.ecf.filetransfer.<A HREF="../org/eclipse/ecf/filetransfer/IRetrieveFileTransferContainerAdapter.html" title="interface in org.eclipse.ecf.filetransfer">IRetrieveFileTransferContainerAdapter</A>
<DD>Set proxy for use upon subsequent
 <A HREF="../org/eclipse/ecf/filetransfer/IRetrieveFileTransferContainerAdapter.html#sendRetrieveRequest(org.eclipse.ecf.filetransfer.identity.IFileID, org.eclipse.ecf.filetransfer.IFileTransferListener, java.util.Map)"><CODE>IRetrieveFileTransferContainerAdapter.sendRetrieveRequest(IFileID, IFileTransferListener, Map)</CODE></A>.
<DT><A HREF="../org/eclipse/ecf/filetransfer/ISendFileTransferContainerAdapter.html#setProxy(org.eclipse.ecf.core.util.Proxy)"><B>setProxy(Proxy)</B></A> - 
Method in interface org.eclipse.ecf.filetransfer.<A HREF="../org/eclipse/ecf/filetransfer/ISendFileTransferContainerAdapter.html" title="interface in org.eclipse.ecf.filetransfer">ISendFileTransferContainerAdapter</A>
<DD>Set proxy for use upon subsequent
 <A HREF="../org/eclipse/ecf/filetransfer/ISendFileTransferContainerAdapter.html#sendOutgoingRequest(org.eclipse.ecf.filetransfer.identity.IFileID, org.eclipse.ecf.filetransfer.IFileTransferInfo, org.eclipse.ecf.filetransfer.IFileTransferListener, java.util.Map)"><CODE>ISendFileTransferContainerAdapter.sendOutgoingRequest(IFileID, IFileTransferInfo, IFileTransferListener, Map)</CODE></A>.
<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/browse/MultiProtocolFileSystemBrowserAdapter.html#setProxy(org.eclipse.ecf.core.util.Proxy)"><B>setProxy(Proxy)</B></A> - 
Method in class org.eclipse.ecf.provider.filetransfer.browse.<A HREF="../org/eclipse/ecf/provider/filetransfer/browse/MultiProtocolFileSystemBrowserAdapter.html" title="class in org.eclipse.ecf.provider.filetransfer.browse">MultiProtocolFileSystemBrowserAdapter</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/outgoing/AbstractOutgoingFileTransfer.html#setProxy(org.eclipse.ecf.core.util.Proxy)"><B>setProxy(Proxy)</B></A> - 
Method in class org.eclipse.ecf.provider.filetransfer.outgoing.<A HREF="../org/eclipse/ecf/provider/filetransfer/outgoing/AbstractOutgoingFileTransfer.html" title="class in org.eclipse.ecf.provider.filetransfer.outgoing">AbstractOutgoingFileTransfer</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/outgoing/MultiProtocolOutgoingAdapter.html#setProxy(org.eclipse.ecf.core.util.Proxy)"><B>setProxy(Proxy)</B></A> - 
Method in class org.eclipse.ecf.provider.filetransfer.outgoing.<A HREF="../org/eclipse/ecf/provider/filetransfer/outgoing/MultiProtocolOutgoingAdapter.html" title="class in org.eclipse.ecf.provider.filetransfer.outgoing">MultiProtocolOutgoingAdapter</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/retrieve/AbstractRetrieveFileTransfer.html#setProxy(org.eclipse.ecf.core.util.Proxy)"><B>setProxy(Proxy)</B></A> - 
Method in class org.eclipse.ecf.provider.filetransfer.retrieve.<A HREF="../org/eclipse/ecf/provider/filetransfer/retrieve/AbstractRetrieveFileTransfer.html" title="class in org.eclipse.ecf.provider.filetransfer.retrieve">AbstractRetrieveFileTransfer</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/retrieve/MultiProtocolRetrieveAdapter.html#setProxy(org.eclipse.ecf.core.util.Proxy)"><B>setProxy(Proxy)</B></A> - 
Method in class org.eclipse.ecf.provider.filetransfer.retrieve.<A HREF="../org/eclipse/ecf/provider/filetransfer/retrieve/MultiProtocolRetrieveAdapter.html" title="class in org.eclipse.ecf.provider.filetransfer.retrieve">MultiProtocolRetrieveAdapter</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/events/socket/AbstractSocketWrapper.html#setReceiveBufferSize(int)"><B>setReceiveBufferSize(int)</B></A> - 
Method in class org.eclipse.ecf.provider.filetransfer.events.socket.<A HREF="../org/eclipse/ecf/provider/filetransfer/events/socket/AbstractSocketWrapper.html" title="class in org.eclipse.ecf.provider.filetransfer.events.socket">AbstractSocketWrapper</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/ui/hyperlink/AbstractURLHyperlink.html#setRegion(org.eclipse.jface.text.IRegion)"><B>setRegion(IRegion)</B></A> - 
Method in class org.eclipse.ecf.ui.hyperlink.<A HREF="../org/eclipse/ecf/ui/hyperlink/AbstractURLHyperlink.html" title="class in org.eclipse.ecf.ui.hyperlink">AbstractURLHyperlink</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/remoteservice/generic/RegistrySharedObject.html#setRegistryConnected(boolean)"><B>setRegistryConnected(boolean)</B></A> - 
Method in class org.eclipse.ecf.provider.remoteservice.generic.<A HREF="../org/eclipse/ecf/provider/remoteservice/generic/RegistrySharedObject.html" title="class in org.eclipse.ecf.provider.remoteservice.generic">RegistrySharedObject</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/sharedobject/ISharedObjectManager.html#setRemoteAddPolicy(org.eclipse.ecf.core.sharedobject.security.ISharedObjectPolicy)"><B>setRemoteAddPolicy(ISharedObjectPolicy)</B></A> - 
Method in interface org.eclipse.ecf.core.sharedobject.<A HREF="../org/eclipse/ecf/core/sharedobject/ISharedObjectManager.html" title="interface in org.eclipse.ecf.core.sharedobject">ISharedObjectManager</A>
<DD>Set this shared object manager's policy for adding remote shared objects.
<DT><A HREF="../org/eclipse/ecf/provider/generic/SOContainer.html#setRemoteAddPolicy(org.eclipse.ecf.core.sharedobject.security.ISharedObjectPolicy)"><B>setRemoteAddPolicy(ISharedObjectPolicy)</B></A> - 
Method in class org.eclipse.ecf.provider.generic.<A HREF="../org/eclipse/ecf/provider/generic/SOContainer.html" title="class in org.eclipse.ecf.provider.generic">SOContainer</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/generic/SOManager.html#setRemoteAddPolicy(org.eclipse.ecf.core.sharedobject.security.ISharedObjectPolicy)"><B>setRemoteAddPolicy(ISharedObjectPolicy)</B></A> - 
Method in class org.eclipse.ecf.provider.generic.<A HREF="../org/eclipse/ecf/provider/generic/SOManager.html" title="class in org.eclipse.ecf.provider.generic">SOManager</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/remoteservice/generic/RemoteServiceReferenceImpl.html#setRemoteClass(java.lang.String)"><B>setRemoteClass(String)</B></A> - 
Method in class org.eclipse.ecf.provider.remoteservice.generic.<A HREF="../org/eclipse/ecf/provider/remoteservice/generic/RemoteServiceReferenceImpl.html" title="class in org.eclipse.ecf.provider.remoteservice.generic">RemoteServiceReferenceImpl</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/browse/AbstractFileSystemBrowser.DirectoryJob.html#setRequest(org.eclipse.ecf.filetransfer.IRemoteFileSystemRequest)"><B>setRequest(IRemoteFileSystemRequest)</B></A> - 
Method in class org.eclipse.ecf.provider.filetransfer.browse.<A HREF="../org/eclipse/ecf/provider/filetransfer/browse/AbstractFileSystemBrowser.DirectoryJob.html" title="class in org.eclipse.ecf.provider.filetransfer.browse">AbstractFileSystemBrowser.DirectoryJob</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/retrieve/UrlConnectionRetrieveFileTransfer.html#setRequestHeaderValues()"><B>setRequestHeaderValues()</B></A> - 
Method in class org.eclipse.ecf.provider.filetransfer.retrieve.<A HREF="../org/eclipse/ecf/provider/filetransfer/retrieve/UrlConnectionRetrieveFileTransfer.html" title="class in org.eclipse.ecf.provider.filetransfer.retrieve">UrlConnectionRetrieveFileTransfer</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/dnssd/DnsSdDiscoveryContainerAdapter.html#setResolver(java.lang.String)"><B>setResolver(String)</B></A> - 
Method in class org.eclipse.ecf.provider.dnssd.<A HREF="../org/eclipse/ecf/provider/dnssd/DnsSdDiscoveryContainerAdapter.html" title="class in org.eclipse.ecf.provider.dnssd">DnsSdDiscoveryContainerAdapter</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/xmpp/identity/XMPPID.html#setResourceName(java.lang.String)"><B>setResourceName(String)</B></A> - 
Method in class org.eclipse.ecf.provider.xmpp.identity.<A HREF="../org/eclipse/ecf/provider/xmpp/identity/XMPPID.html" title="class in org.eclipse.ecf.provider.xmpp.identity">XMPPID</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/remoteservice/generic/Request.html#setResponse(org.eclipse.ecf.provider.remoteservice.generic.Response)"><B>setResponse(Response)</B></A> - 
Method in class org.eclipse.ecf.provider.remoteservice.generic.<A HREF="../org/eclipse/ecf/provider/remoteservice/generic/Request.html" title="class in org.eclipse.ecf.provider.remoteservice.generic">Request</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/remoteservice/client/AbstractClientContainer.html#setResponseDeserializer(org.eclipse.ecf.remoteservice.client.IRemoteResponseDeserializer)"><B>setResponseDeserializer(IRemoteResponseDeserializer)</B></A> - 
Method in class org.eclipse.ecf.remoteservice.client.<A HREF="../org/eclipse/ecf/remoteservice/client/AbstractClientContainer.html" title="class in org.eclipse.ecf.remoteservice.client">AbstractClientContainer</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/remoteservice/client/IRemoteServiceClientContainerAdapter.html#setResponseDeserializer(org.eclipse.ecf.remoteservice.client.IRemoteResponseDeserializer)"><B>setResponseDeserializer(IRemoteResponseDeserializer)</B></A> - 
Method in interface org.eclipse.ecf.remoteservice.client.<A HREF="../org/eclipse/ecf/remoteservice/client/IRemoteServiceClientContainerAdapter.html" title="interface in org.eclipse.ecf.remoteservice.client">IRemoteServiceClientContainerAdapter</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/presence/search/ISearch.html#setResultList(org.eclipse.ecf.presence.search.IResultList)"><B>setResultList(IResultList)</B></A> - 
Method in interface org.eclipse.ecf.presence.search.<A HREF="../org/eclipse/ecf/presence/search/ISearch.html" title="interface in org.eclipse.ecf.presence.search">ISearch</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/retrieve/UrlConnectionRetrieveFileTransfer.html#setResumeRequestHeaderValues()"><B>setResumeRequestHeaderValues()</B></A> - 
Method in class org.eclipse.ecf.provider.filetransfer.retrieve.<A HREF="../org/eclipse/ecf/provider/filetransfer/retrieve/UrlConnectionRetrieveFileTransfer.html" title="class in org.eclipse.ecf.provider.filetransfer.retrieve">UrlConnectionRetrieveFileTransfer</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/IFileTransferProtocolToFactoryMapper.html#setRetrieveFileTransferFactory(java.lang.String, java.lang.String, org.eclipse.ecf.filetransfer.service.IRetrieveFileTransferFactory, int)"><B>setRetrieveFileTransferFactory(String, String, IRetrieveFileTransferFactory, int)</B></A> - 
Method in interface org.eclipse.ecf.provider.filetransfer.<A HREF="../org/eclipse/ecf/provider/filetransfer/IFileTransferProtocolToFactoryMapper.html" title="interface in org.eclipse.ecf.provider.filetransfer">IFileTransferProtocolToFactoryMapper</A>
<DD>
 For the given protocol, set the given factory to be used for retrieve file transfer.
<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/IFileTransferProtocolToFactoryMapper.html#setRetrieveFileTransferFactory(java.lang.String, java.lang.String, org.eclipse.ecf.filetransfer.service.IRetrieveFileTransferFactory, int, boolean)"><B>setRetrieveFileTransferFactory(String, String, IRetrieveFileTransferFactory, int, boolean)</B></A> - 
Method in interface org.eclipse.ecf.provider.filetransfer.<A HREF="../org/eclipse/ecf/provider/filetransfer/IFileTransferProtocolToFactoryMapper.html" title="interface in org.eclipse.ecf.provider.filetransfer">IFileTransferProtocolToFactoryMapper</A>
<DD>
 For the given protocol, set the given factory to be used for retrieve file transfer.
<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/events/socket/AbstractSocketWrapper.html#setReuseAddress(boolean)"><B>setReuseAddress(boolean)</B></A> - 
Method in class org.eclipse.ecf.provider.filetransfer.events.socket.<A HREF="../org/eclipse/ecf/provider/filetransfer/events/socket/AbstractSocketWrapper.html" title="class in org.eclipse.ecf.provider.filetransfer.events.socket">AbstractSocketWrapper</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/dnssd/DnsSdDiscoveryContainerAdapter.html#setSearchPath(java.lang.String[])"><B>setSearchPath(String[])</B></A> - 
Method in class org.eclipse.ecf.provider.dnssd.<A HREF="../org/eclipse/ecf/provider/dnssd/DnsSdDiscoveryContainerAdapter.html" title="class in org.eclipse.ecf.provider.dnssd">DnsSdDiscoveryContainerAdapter</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/events/socket/AbstractSocketWrapper.html#setSendBufferSize(int)"><B>setSendBufferSize(int)</B></A> - 
Method in class org.eclipse.ecf.provider.filetransfer.events.socket.<A HREF="../org/eclipse/ecf/provider/filetransfer/events/socket/AbstractSocketWrapper.html" title="class in org.eclipse.ecf.provider.filetransfer.events.socket">AbstractSocketWrapper</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/IFileTransferProtocolToFactoryMapper.html#setSendFileTransferFactory(java.lang.String, java.lang.String, org.eclipse.ecf.filetransfer.service.ISendFileTransferFactory, int)"><B>setSendFileTransferFactory(String, String, ISendFileTransferFactory, int)</B></A> - 
Method in interface org.eclipse.ecf.provider.filetransfer.<A HREF="../org/eclipse/ecf/provider/filetransfer/IFileTransferProtocolToFactoryMapper.html" title="interface in org.eclipse.ecf.provider.filetransfer">IFileTransferProtocolToFactoryMapper</A>
<DD>
 For the given protocol, set the given factory to be used for retrieve file transfer.
<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/IFileTransferProtocolToFactoryMapper.html#setSendFileTransferFactory(java.lang.String, java.lang.String, org.eclipse.ecf.filetransfer.service.ISendFileTransferFactory, int, boolean)"><B>setSendFileTransferFactory(String, String, ISendFileTransferFactory, int, boolean)</B></A> - 
Method in interface org.eclipse.ecf.provider.filetransfer.<A HREF="../org/eclipse/ecf/provider/filetransfer/IFileTransferProtocolToFactoryMapper.html" title="interface in org.eclipse.ecf.provider.filetransfer">IFileTransferProtocolToFactoryMapper</A>
<DD>
 For the given protocol, set the given factory to be used for retrieve file transfer.
<DT><A HREF="../org/eclipse/ecf/provider/generic/ContainerMessage.html#setSequence(long)"><B>setSequence(long)</B></A> - 
Method in class org.eclipse.ecf.provider.generic.<A HREF="../org/eclipse/ecf/provider/generic/ContainerMessage.html" title="class in org.eclipse.ecf.provider.generic">ContainerMessage</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/discovery/ui/model/impl/IServiceInfoImpl.html#setServiceID(org.eclipse.ecf.discovery.ui.model.IServiceID)"><B>setServiceID(IServiceID)</B></A> - 
Method in class org.eclipse.ecf.discovery.ui.model.impl.<A HREF="../org/eclipse/ecf/discovery/ui/model/impl/IServiceInfoImpl.html" title="class in org.eclipse.ecf.discovery.ui.model.impl">IServiceInfoImpl</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/discovery/ui/model/IServiceInfo.html#setServiceID(org.eclipse.ecf.discovery.ui.model.IServiceID)"><B>setServiceID(IServiceID)</B></A> - 
Method in interface org.eclipse.ecf.discovery.ui.model.<A HREF="../org/eclipse/ecf/discovery/ui/model/IServiceInfo.html" title="interface in org.eclipse.ecf.discovery.ui.model">IServiceInfo</A>
<DD>Sets the value of the '<A HREF="../org/eclipse/ecf/discovery/ui/model/IServiceInfo.html#getServiceID()"><CODE><em>Service ID</em></CODE></A>' reference.
<DT><A HREF="../org/eclipse/ecf/discovery/identity/ServiceID.html#setServiceInfo(org.eclipse.ecf.discovery.IServiceInfo)"><B>setServiceInfo(IServiceInfo)</B></A> - 
Method in class org.eclipse.ecf.discovery.identity.<A HREF="../org/eclipse/ecf/discovery/identity/ServiceID.html" title="class in org.eclipse.ecf.discovery.identity">ServiceID</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/discovery/ui/model/impl/IServiceIDImpl.html#setServiceTypeID(org.eclipse.ecf.discovery.ui.model.IServiceTypeID)"><B>setServiceTypeID(IServiceTypeID)</B></A> - 
Method in class org.eclipse.ecf.discovery.ui.model.impl.<A HREF="../org/eclipse/ecf/discovery/ui/model/impl/IServiceIDImpl.html" title="class in org.eclipse.ecf.discovery.ui.model.impl">IServiceIDImpl</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/discovery/ui/model/IServiceID.html#setServiceTypeID(org.eclipse.ecf.discovery.ui.model.IServiceTypeID)"><B>setServiceTypeID(IServiceTypeID)</B></A> - 
Method in interface org.eclipse.ecf.discovery.ui.model.<A HREF="../org/eclipse/ecf/discovery/ui/model/IServiceID.html" title="interface in org.eclipse.ecf.discovery.ui.model">IServiceID</A>
<DD>Sets the value of the '<A HREF="../org/eclipse/ecf/discovery/ui/model/IServiceID.html#getServiceTypeID()"><CODE><em>Service Type ID</em></CODE></A>' reference.
<DT><A HREF="../org/eclipse/ecf/core/status/SerializableStatus.html#setSeverity(int)"><B>setSeverity(int)</B></A> - 
Method in class org.eclipse.ecf.core.status.<A HREF="../org/eclipse/ecf/core/status/SerializableStatus.html" title="class in org.eclipse.ecf.core.status">SerializableStatus</A>
<DD>Sets the severity.
<DT><A HREF="../org/eclipse/ecf/core/sharedobject/ISharedObjectContainer.html#setSharedObjectMessageSerializer(org.eclipse.ecf.core.sharedobject.util.ISharedObjectMessageSerializer)"><B>setSharedObjectMessageSerializer(ISharedObjectMessageSerializer)</B></A> - 
Method in interface org.eclipse.ecf.core.sharedobject.<A HREF="../org/eclipse/ecf/core/sharedobject/ISharedObjectContainer.html" title="interface in org.eclipse.ecf.core.sharedobject">ISharedObjectContainer</A>
<DD>
 Set the shared object message serializer.
<DT><A HREF="../org/eclipse/ecf/provider/generic/SOContainer.html#setSharedObjectMessageSerializer(org.eclipse.ecf.core.sharedobject.util.ISharedObjectMessageSerializer)"><B>setSharedObjectMessageSerializer(ISharedObjectMessageSerializer)</B></A> - 
Method in class org.eclipse.ecf.provider.generic.<A HREF="../org/eclipse/ecf/provider/generic/SOContainer.html" title="class in org.eclipse.ecf.provider.generic">SOContainer</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/filetransfer/events/socket/ISocketConnectedEvent.html#setSocket(java.net.Socket)"><B>setSocket(Socket)</B></A> - 
Method in interface org.eclipse.ecf.filetransfer.events.socket.<A HREF="../org/eclipse/ecf/filetransfer/events/socket/ISocketConnectedEvent.html" title="interface in org.eclipse.ecf.filetransfer.events.socket">ISocketConnectedEvent</A>
<DD>Sets a socket to be used by the app.
<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/events/socket/AbstractSocketEvent.html#setSocket(java.net.Socket)"><B>setSocket(Socket)</B></A> - 
Method in class org.eclipse.ecf.provider.filetransfer.events.socket.<A HREF="../org/eclipse/ecf/provider/filetransfer/events/socket/AbstractSocketEvent.html" title="class in org.eclipse.ecf.provider.filetransfer.events.socket">AbstractSocketEvent</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/events/socket/SocketConnectedEvent.html#setSocket(java.net.Socket)"><B>setSocket(Socket)</B></A> - 
Method in class org.eclipse.ecf.provider.filetransfer.events.socket.<A HREF="../org/eclipse/ecf/provider/filetransfer/events/socket/SocketConnectedEvent.html" title="class in org.eclipse.ecf.provider.filetransfer.events.socket">SocketConnectedEvent</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/comm/tcp/SocketFactory.html#setSocketFactory(org.eclipse.ecf.provider.comm.tcp.SocketFactory)"><B>setSocketFactory(SocketFactory)</B></A> - 
Static method in class org.eclipse.ecf.provider.comm.tcp.<A HREF="../org/eclipse/ecf/provider/comm/tcp/SocketFactory.html" title="class in org.eclipse.ecf.provider.comm.tcp">SocketFactory</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/events/socket/AbstractSocketWrapper.html#setSoLinger(boolean, int)"><B>setSoLinger(boolean, int)</B></A> - 
Method in class org.eclipse.ecf.provider.filetransfer.events.socket.<A HREF="../org/eclipse/ecf/provider/filetransfer/events/socket/AbstractSocketWrapper.html" title="class in org.eclipse.ecf.provider.filetransfer.events.socket">AbstractSocketWrapper</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/events/socket/AbstractSocketWrapper.html#setSoTimeout(int)"><B>setSoTimeout(int)</B></A> - 
Method in class org.eclipse.ecf.provider.filetransfer.events.socket.<A HREF="../org/eclipse/ecf/provider/filetransfer/events/socket/AbstractSocketWrapper.html" title="class in org.eclipse.ecf.provider.filetransfer.events.socket">AbstractSocketWrapper</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/filetransfer/ui/actions/AbstractFileSendAction.html#setTargetReceiver(org.eclipse.ecf.filetransfer.identity.IFileID)"><B>setTargetReceiver(IFileID)</B></A> - 
Method in class org.eclipse.ecf.filetransfer.ui.actions.<A HREF="../org/eclipse/ecf/filetransfer/ui/actions/AbstractFileSendAction.html" title="class in org.eclipse.ecf.filetransfer.ui.actions">AbstractFileSendAction</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/events/socket/AbstractSocketWrapper.html#setTcpNoDelay(boolean)"><B>setTcpNoDelay(boolean)</B></A> - 
Method in class org.eclipse.ecf.provider.filetransfer.events.socket.<A HREF="../org/eclipse/ecf/provider/filetransfer/events/socket/AbstractSocketWrapper.html" title="class in org.eclipse.ecf.provider.filetransfer.events.socket">AbstractSocketWrapper</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/generic/ContainerMessage.html#setToContainerID(org.eclipse.ecf.core.identity.ID)"><B>setToContainerID(ID)</B></A> - 
Method in class org.eclipse.ecf.provider.generic.<A HREF="../org/eclipse/ecf/provider/generic/ContainerMessage.html" title="class in org.eclipse.ecf.provider.generic">ContainerMessage</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/presence/ui/menu/AbstractRosterMenuContributionItem.html#setTopMenuImageDescriptor(org.eclipse.jface.resource.ImageDescriptor)"><B>setTopMenuImageDescriptor(ImageDescriptor)</B></A> - 
Method in class org.eclipse.ecf.presence.ui.menu.<A HREF="../org/eclipse/ecf/presence/ui/menu/AbstractRosterMenuContributionItem.html" title="class in org.eclipse.ecf.presence.ui.menu">AbstractRosterMenuContributionItem</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/presence/ui/menu/AbstractRosterMenuContributionItem.html#setTopMenuName(java.lang.String)"><B>setTopMenuName(String)</B></A> - 
Method in class org.eclipse.ecf.presence.ui.menu.<A HREF="../org/eclipse/ecf/presence/ui/menu/AbstractRosterMenuContributionItem.html" title="class in org.eclipse.ecf.presence.ui.menu">AbstractRosterMenuContributionItem</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/events/socket/AbstractSocketWrapper.html#setTrafficClass(int)"><B>setTrafficClass(int)</B></A> - 
Method in class org.eclipse.ecf.provider.filetransfer.events.socket.<A HREF="../org/eclipse/ecf/provider/filetransfer/events/socket/AbstractSocketWrapper.html" title="class in org.eclipse.ecf.provider.filetransfer.events.socket">AbstractSocketWrapper</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/sharedobject/TwoPhaseCommitEventProcessor.html#setTransactionState(byte)"><B>setTransactionState(byte)</B></A> - 
Method in class org.eclipse.ecf.core.sharedobject.<A HREF="../org/eclipse/ecf/core/sharedobject/TwoPhaseCommitEventProcessor.html" title="class in org.eclipse.ecf.core.sharedobject">TwoPhaseCommitEventProcessor</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/ui/wizards/ConfigurationWizardSelectionPage.html#setTreeViewer(org.eclipse.jface.viewers.TreeViewer)"><B>setTreeViewer(TreeViewer)</B></A> - 
Method in class org.eclipse.ecf.ui.wizards.<A HREF="../org/eclipse/ecf/ui/wizards/ConfigurationWizardSelectionPage.html" title="class in org.eclipse.ecf.ui.wizards">ConfigurationWizardSelectionPage</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/dnssd/DnsSdDiscoveryContainerAdapter.html#setTsigKey(java.lang.String, java.lang.String)"><B>setTsigKey(String, String)</B></A> - 
Method in class org.eclipse.ecf.provider.dnssd.<A HREF="../org/eclipse/ecf/provider/dnssd/DnsSdDiscoveryContainerAdapter.html" title="class in org.eclipse.ecf.provider.dnssd">DnsSdDiscoveryContainerAdapter</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/ui/hyperlink/AbstractURLHyperlink.html#setTypeLabel(java.lang.String)"><B>setTypeLabel(String)</B></A> - 
Method in class org.eclipse.ecf.ui.hyperlink.<A HREF="../org/eclipse/ecf/ui/hyperlink/AbstractURLHyperlink.html" title="class in org.eclipse.ecf.ui.hyperlink">AbstractURLHyperlink</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/outgoing/AbstractOutgoingFileTransfer.html#setupAndScheduleJob()"><B>setupAndScheduleJob()</B></A> - 
Method in class org.eclipse.ecf.provider.filetransfer.outgoing.<A HREF="../org/eclipse/ecf/provider/filetransfer/outgoing/AbstractOutgoingFileTransfer.html" title="class in org.eclipse.ecf.provider.filetransfer.outgoing">AbstractOutgoingFileTransfer</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/retrieve/AbstractRetrieveFileTransfer.html#setupAndScheduleJob(org.eclipse.ecf.filetransfer.FileTransferJob)"><B>setupAndScheduleJob(FileTransferJob)</B></A> - 
Method in class org.eclipse.ecf.provider.filetransfer.retrieve.<A HREF="../org/eclipse/ecf/provider/filetransfer/retrieve/AbstractRetrieveFileTransfer.html" title="class in org.eclipse.ecf.provider.filetransfer.retrieve">AbstractRetrieveFileTransfer</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/browse/URLFileSystemBrowser.html#setupAuthentication()"><B>setupAuthentication()</B></A> - 
Method in class org.eclipse.ecf.provider.filetransfer.browse.<A HREF="../org/eclipse/ecf/provider/filetransfer/browse/URLFileSystemBrowser.html" title="class in org.eclipse.ecf.provider.filetransfer.browse">URLFileSystemBrowser</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/retrieve/UrlConnectionRetrieveFileTransfer.html#setupAuthentication()"><B>setupAuthentication()</B></A> - 
Method in class org.eclipse.ecf.provider.filetransfer.retrieve.<A HREF="../org/eclipse/ecf/provider/filetransfer/retrieve/UrlConnectionRetrieveFileTransfer.html" title="class in org.eclipse.ecf.provider.filetransfer.retrieve">UrlConnectionRetrieveFileTransfer</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/remoteservice/rest/client/RestClientService.html#setupAuthenticaton(org.apache.commons.httpclient.HttpClient, org.apache.commons.httpclient.HttpMethod)"><B>setupAuthenticaton(HttpClient, HttpMethod)</B></A> - 
Method in class org.eclipse.ecf.remoteservice.rest.client.<A HREF="../org/eclipse/ecf/remoteservice/rest/client/RestClientService.html" title="class in org.eclipse.ecf.remoteservice.rest.client">RestClientService</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/comm/tcp/Server.html#setupListener()"><B>setupListener()</B></A> - 
Method in class org.eclipse.ecf.provider.comm.tcp.<A HREF="../org/eclipse/ecf/provider/comm/tcp/Server.html" title="class in org.eclipse.ecf.provider.comm.tcp">Server</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/browse/AbstractFileSystemBrowser.html#setupProxies()"><B>setupProxies()</B></A> - 
Method in class org.eclipse.ecf.provider.filetransfer.browse.<A HREF="../org/eclipse/ecf/provider/filetransfer/browse/AbstractFileSystemBrowser.html" title="class in org.eclipse.ecf.provider.filetransfer.browse">AbstractFileSystemBrowser</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/outgoing/AbstractOutgoingFileTransfer.html#setupProxies()"><B>setupProxies()</B></A> - 
Method in class org.eclipse.ecf.provider.filetransfer.outgoing.<A HREF="../org/eclipse/ecf/provider/filetransfer/outgoing/AbstractOutgoingFileTransfer.html" title="class in org.eclipse.ecf.provider.filetransfer.outgoing">AbstractOutgoingFileTransfer</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/retrieve/AbstractRetrieveFileTransfer.html#setupProxies()"><B>setupProxies()</B></A> - 
Method in class org.eclipse.ecf.provider.filetransfer.retrieve.<A HREF="../org/eclipse/ecf/provider/filetransfer/retrieve/AbstractRetrieveFileTransfer.html" title="class in org.eclipse.ecf.provider.filetransfer.retrieve">AbstractRetrieveFileTransfer</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/browse/AbstractFileSystemBrowser.html#setupProxy(org.eclipse.ecf.core.util.Proxy)"><B>setupProxy(Proxy)</B></A> - 
Method in class org.eclipse.ecf.provider.filetransfer.browse.<A HREF="../org/eclipse/ecf/provider/filetransfer/browse/AbstractFileSystemBrowser.html" title="class in org.eclipse.ecf.provider.filetransfer.browse">AbstractFileSystemBrowser</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/browse/LocalFileSystemBrowser.html#setupProxy(org.eclipse.ecf.core.util.Proxy)"><B>setupProxy(Proxy)</B></A> - 
Method in class org.eclipse.ecf.provider.filetransfer.browse.<A HREF="../org/eclipse/ecf/provider/filetransfer/browse/LocalFileSystemBrowser.html" title="class in org.eclipse.ecf.provider.filetransfer.browse">LocalFileSystemBrowser</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/browse/URLFileSystemBrowser.html#setupProxy(org.eclipse.ecf.core.util.Proxy)"><B>setupProxy(Proxy)</B></A> - 
Method in class org.eclipse.ecf.provider.filetransfer.browse.<A HREF="../org/eclipse/ecf/provider/filetransfer/browse/URLFileSystemBrowser.html" title="class in org.eclipse.ecf.provider.filetransfer.browse">URLFileSystemBrowser</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/outgoing/AbstractOutgoingFileTransfer.html#setupProxy(org.eclipse.ecf.core.util.Proxy)"><B>setupProxy(Proxy)</B></A> - 
Method in class org.eclipse.ecf.provider.filetransfer.outgoing.<A HREF="../org/eclipse/ecf/provider/filetransfer/outgoing/AbstractOutgoingFileTransfer.html" title="class in org.eclipse.ecf.provider.filetransfer.outgoing">AbstractOutgoingFileTransfer</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/outgoing/AbstractUrlConnectionOutgoingFileTransfer.html#setupProxy(org.eclipse.ecf.core.util.Proxy)"><B>setupProxy(Proxy)</B></A> - 
Method in class org.eclipse.ecf.provider.filetransfer.outgoing.<A HREF="../org/eclipse/ecf/provider/filetransfer/outgoing/AbstractUrlConnectionOutgoingFileTransfer.html" title="class in org.eclipse.ecf.provider.filetransfer.outgoing">AbstractUrlConnectionOutgoingFileTransfer</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/outgoing/LocalFileOutgoingFileTransfer.html#setupProxy(org.eclipse.ecf.core.util.Proxy)"><B>setupProxy(Proxy)</B></A> - 
Method in class org.eclipse.ecf.provider.filetransfer.outgoing.<A HREF="../org/eclipse/ecf/provider/filetransfer/outgoing/LocalFileOutgoingFileTransfer.html" title="class in org.eclipse.ecf.provider.filetransfer.outgoing">LocalFileOutgoingFileTransfer</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/retrieve/AbstractRetrieveFileTransfer.html#setupProxy(org.eclipse.ecf.core.util.Proxy)"><B>setupProxy(Proxy)</B></A> - 
Method in class org.eclipse.ecf.provider.filetransfer.retrieve.<A HREF="../org/eclipse/ecf/provider/filetransfer/retrieve/AbstractRetrieveFileTransfer.html" title="class in org.eclipse.ecf.provider.filetransfer.retrieve">AbstractRetrieveFileTransfer</A>
<DD>Setup ECF proxy.
<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/retrieve/UrlConnectionRetrieveFileTransfer.html#setupProxy(org.eclipse.ecf.core.util.Proxy)"><B>setupProxy(Proxy)</B></A> - 
Method in class org.eclipse.ecf.provider.filetransfer.retrieve.<A HREF="../org/eclipse/ecf/provider/filetransfer/retrieve/UrlConnectionRetrieveFileTransfer.html" title="class in org.eclipse.ecf.provider.filetransfer.retrieve">UrlConnectionRetrieveFileTransfer</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/util/JREProxyHelper.html#setupProxy(org.eclipse.ecf.core.util.Proxy)"><B>setupProxy(Proxy)</B></A> - 
Method in class org.eclipse.ecf.provider.filetransfer.util.<A HREF="../org/eclipse/ecf/provider/filetransfer/util/JREProxyHelper.html" title="class in org.eclipse.ecf.provider.filetransfer.util">JREProxyHelper</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/server/generic/app/AbstractGenericServerApplication.html#setupServerContainer(org.eclipse.ecf.provider.generic.TCPServerSOContainer)"><B>setupServerContainer(TCPServerSOContainer)</B></A> - 
Method in class org.eclipse.ecf.server.generic.app.<A HREF="../org/eclipse/ecf/server/generic/app/AbstractGenericServerApplication.html" title="class in org.eclipse.ecf.server.generic.app">AbstractGenericServerApplication</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/server/generic/app/GenericServer.html#setupServerFromConfig(java.util.List)"><B>setupServerFromConfig(List)</B></A> - 
Method in class org.eclipse.ecf.server.generic.app.<A HREF="../org/eclipse/ecf/server/generic/app/GenericServer.html" title="class in org.eclipse.ecf.server.generic.app">GenericServer</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/server/generic/app/GenericServer.html#setupServerFromParameters(java.lang.String, int, java.lang.String, int)"><B>setupServerFromParameters(String, int, String, int)</B></A> - 
Method in class org.eclipse.ecf.server.generic.app.<A HREF="../org/eclipse/ecf/server/generic/app/GenericServer.html" title="class in org.eclipse.ecf.server.generic.app">GenericServer</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/remoteservice/rest/client/RestClientService.html#setupTimeouts(org.apache.commons.httpclient.HttpClient, org.eclipse.ecf.remoteservice.IRemoteCall, org.eclipse.ecf.remoteservice.client.IRemoteCallable)"><B>setupTimeouts(HttpClient, IRemoteCall, IRemoteCallable)</B></A> - 
Method in class org.eclipse.ecf.remoteservice.rest.client.<A HREF="../org/eclipse/ecf/remoteservice/rest/client/RestClientService.html" title="class in org.eclipse.ecf.remoteservice.rest.client">RestClientService</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/presence/ui/MultiRosterView.html#setupTreeViewer(org.eclipse.swt.widgets.Composite)"><B>setupTreeViewer(Composite)</B></A> - 
Method in class org.eclipse.ecf.presence.ui.<A HREF="../org/eclipse/ecf/presence/ui/MultiRosterView.html" title="class in org.eclipse.ecf.presence.ui">MultiRosterView</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/presence/ui/UserSearchView.html#setupTreeViewer(org.eclipse.swt.widgets.Composite)"><B>setupTreeViewer(Composite)</B></A> - 
Method in class org.eclipse.ecf.presence.ui.<A HREF="../org/eclipse/ecf/presence/ui/UserSearchView.html" title="class in org.eclipse.ecf.presence.ui">UserSearchView</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/ui/hyperlink/AbstractURLHyperlink.html#setURI(java.net.URI)"><B>setURI(URI)</B></A> - 
Method in class org.eclipse.ecf.ui.hyperlink.<A HREF="../org/eclipse/ecf/ui/hyperlink/AbstractURLHyperlink.html" title="class in org.eclipse.ecf.ui.hyperlink">AbstractURLHyperlink</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/presence/roster/Roster.html#setUser(org.eclipse.ecf.core.user.IUser)"><B>setUser(IUser)</B></A> - 
Method in class org.eclipse.ecf.presence.roster.<A HREF="../org/eclipse/ecf/presence/roster/Roster.html" title="class in org.eclipse.ecf.presence.roster">Roster</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/security/BooleanCallback.html#setValue(boolean)"><B>setValue(boolean)</B></A> - 
Method in class org.eclipse.ecf.core.security.<A HREF="../org/eclipse/ecf/core/security/BooleanCallback.html" title="class in org.eclipse.ecf.core.security">BooleanCallback</A>
<DD>Set the retrieved name.
<DT><A HREF="../org/eclipse/ecf/osgi/services/discovery/local/OneInterfaceSED.html#setVersion(java.lang.String)"><B>setVersion(String)</B></A> - 
Method in class org.eclipse.ecf.osgi.services.discovery.local.<A HREF="../org/eclipse/ecf/osgi/services/discovery/local/OneInterfaceSED.html" title="class in org.eclipse.ecf.osgi.services.discovery.local">OneInterfaceSED</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/ui/SharedImages.html" title="class in org.eclipse.ecf.ui"><B>SharedImages</B></A> - Class in <A HREF="../org/eclipse/ecf/ui/package-summary.html">org.eclipse.ecf.ui</A><DD>Shared images for ECF user interface elements.<DT><A HREF="../org/eclipse/ecf/provider/generic/SOWrapper.html#sharedObject"><B>sharedObject</B></A> - 
Variable in class org.eclipse.ecf.provider.generic.<A HREF="../org/eclipse/ecf/provider/generic/SOWrapper.html" title="class in org.eclipse.ecf.provider.generic">SOWrapper</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/remoteservice/generic/RemoteServiceImpl.html#sharedObject"><B>sharedObject</B></A> - 
Variable in class org.eclipse.ecf.provider.remoteservice.generic.<A HREF="../org/eclipse/ecf/provider/remoteservice/generic/RemoteServiceImpl.html" title="class in org.eclipse.ecf.provider.remoteservice.generic">RemoteServiceImpl</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/remoteservice/generic/RemoteServiceRegistrationImpl.html#sharedObject"><B>sharedObject</B></A> - 
Variable in class org.eclipse.ecf.provider.remoteservice.generic.<A HREF="../org/eclipse/ecf/provider/remoteservice/generic/RemoteServiceRegistrationImpl.html" title="class in org.eclipse.ecf.provider.remoteservice.generic">RemoteServiceRegistrationImpl</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/sharedobject/events/SharedObjectActivatedEvent.html" title="class in org.eclipse.ecf.core.sharedobject.events"><B>SharedObjectActivatedEvent</B></A> - Class in <A HREF="../org/eclipse/ecf/core/sharedobject/events/package-summary.html">org.eclipse.ecf.core.sharedobject.events</A><DD>&nbsp;<DT><A HREF="../org/eclipse/ecf/core/sharedobject/events/SharedObjectActivatedEvent.html#SharedObjectActivatedEvent(org.eclipse.ecf.core.identity.ID, org.eclipse.ecf.core.identity.ID)"><B>SharedObjectActivatedEvent(ID, ID)</B></A> - 
Constructor for class org.eclipse.ecf.core.sharedobject.events.<A HREF="../org/eclipse/ecf/core/sharedobject/events/SharedObjectActivatedEvent.html" title="class in org.eclipse.ecf.core.sharedobject.events">SharedObjectActivatedEvent</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectAddAbortException.html" title="class in org.eclipse.ecf.core.sharedobject"><B>SharedObjectAddAbortException</B></A> - Exception in <A HREF="../org/eclipse/ecf/core/sharedobject/package-summary.html">org.eclipse.ecf.core.sharedobject</A><DD>Exception thrown during transactional add of shared object<DT><A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectAddAbortException.html#SharedObjectAddAbortException()"><B>SharedObjectAddAbortException()</B></A> - 
Constructor for exception org.eclipse.ecf.core.sharedobject.<A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectAddAbortException.html" title="class in org.eclipse.ecf.core.sharedobject">SharedObjectAddAbortException</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectAddAbortException.html#SharedObjectAddAbortException(java.lang.String)"><B>SharedObjectAddAbortException(String)</B></A> - 
Constructor for exception org.eclipse.ecf.core.sharedobject.<A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectAddAbortException.html" title="class in org.eclipse.ecf.core.sharedobject">SharedObjectAddAbortException</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectAddAbortException.html#SharedObjectAddAbortException(java.lang.String, java.lang.Throwable)"><B>SharedObjectAddAbortException(String, Throwable)</B></A> - 
Constructor for exception org.eclipse.ecf.core.sharedobject.<A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectAddAbortException.html" title="class in org.eclipse.ecf.core.sharedobject">SharedObjectAddAbortException</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectAddAbortException.html#SharedObjectAddAbortException(java.lang.String, java.lang.Throwable, int)"><B>SharedObjectAddAbortException(String, Throwable, int)</B></A> - 
Constructor for exception org.eclipse.ecf.core.sharedobject.<A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectAddAbortException.html" title="class in org.eclipse.ecf.core.sharedobject">SharedObjectAddAbortException</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectAddAbortException.html#SharedObjectAddAbortException(java.lang.String, java.util.Map, int)"><B>SharedObjectAddAbortException(String, Map, int)</B></A> - 
Constructor for exception org.eclipse.ecf.core.sharedobject.<A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectAddAbortException.html" title="class in org.eclipse.ecf.core.sharedobject">SharedObjectAddAbortException</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectAddAbortException.html#SharedObjectAddAbortException(java.lang.String, java.util.List, java.util.Map, int)"><B>SharedObjectAddAbortException(String, List, Map, int)</B></A> - 
Constructor for exception org.eclipse.ecf.core.sharedobject.<A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectAddAbortException.html" title="class in org.eclipse.ecf.core.sharedobject">SharedObjectAddAbortException</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectAddAbortException.html#SharedObjectAddAbortException(java.lang.Throwable)"><B>SharedObjectAddAbortException(Throwable)</B></A> - 
Constructor for exception org.eclipse.ecf.core.sharedobject.<A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectAddAbortException.html" title="class in org.eclipse.ecf.core.sharedobject">SharedObjectAddAbortException</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectAddException.html" title="class in org.eclipse.ecf.core.sharedobject"><B>SharedObjectAddException</B></A> - Exception in <A HREF="../org/eclipse/ecf/core/sharedobject/package-summary.html">org.eclipse.ecf.core.sharedobject</A><DD>Exception thrown upon shared object add to container<DT><A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectAddException.html#SharedObjectAddException(org.eclipse.core.runtime.IStatus)"><B>SharedObjectAddException(IStatus)</B></A> - 
Constructor for exception org.eclipse.ecf.core.sharedobject.<A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectAddException.html" title="class in org.eclipse.ecf.core.sharedobject">SharedObjectAddException</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectAddException.html#SharedObjectAddException()"><B>SharedObjectAddException()</B></A> - 
Constructor for exception org.eclipse.ecf.core.sharedobject.<A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectAddException.html" title="class in org.eclipse.ecf.core.sharedobject">SharedObjectAddException</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectAddException.html#SharedObjectAddException(java.lang.String)"><B>SharedObjectAddException(String)</B></A> - 
Constructor for exception org.eclipse.ecf.core.sharedobject.<A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectAddException.html" title="class in org.eclipse.ecf.core.sharedobject">SharedObjectAddException</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectAddException.html#SharedObjectAddException(java.lang.String, java.lang.Throwable)"><B>SharedObjectAddException(String, Throwable)</B></A> - 
Constructor for exception org.eclipse.ecf.core.sharedobject.<A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectAddException.html" title="class in org.eclipse.ecf.core.sharedobject">SharedObjectAddException</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectAddException.html#SharedObjectAddException(java.lang.Throwable)"><B>SharedObjectAddException(Throwable)</B></A> - 
Constructor for exception org.eclipse.ecf.core.sharedobject.<A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectAddException.html" title="class in org.eclipse.ecf.core.sharedobject">SharedObjectAddException</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/sharedobject/events/SharedObjectCallEvent.html" title="class in org.eclipse.ecf.core.sharedobject.events"><B>SharedObjectCallEvent</B></A> - Class in <A HREF="../org/eclipse/ecf/core/sharedobject/events/package-summary.html">org.eclipse.ecf.core.sharedobject.events</A><DD>&nbsp;<DT><A HREF="../org/eclipse/ecf/core/sharedobject/events/SharedObjectCallEvent.html#SharedObjectCallEvent(org.eclipse.ecf.core.identity.ID, org.eclipse.ecf.core.util.Event, org.eclipse.equinox.concurrent.future.IFuture)"><B>SharedObjectCallEvent(ID, Event, IFuture)</B></A> - 
Constructor for class org.eclipse.ecf.core.sharedobject.events.<A HREF="../org/eclipse/ecf/core/sharedobject/events/SharedObjectCallEvent.html" title="class in org.eclipse.ecf.core.sharedobject.events">SharedObjectCallEvent</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/sharedobject/events/SharedObjectCommitEvent.html" title="class in org.eclipse.ecf.core.sharedobject.events"><B>SharedObjectCommitEvent</B></A> - Class in <A HREF="../org/eclipse/ecf/core/sharedobject/events/package-summary.html">org.eclipse.ecf.core.sharedobject.events</A><DD>&nbsp;<DT><A HREF="../org/eclipse/ecf/core/sharedobject/events/SharedObjectCommitEvent.html#SharedObjectCommitEvent(org.eclipse.ecf.core.identity.ID, org.eclipse.ecf.core.util.Event)"><B>SharedObjectCommitEvent(ID, Event)</B></A> - 
Constructor for class org.eclipse.ecf.core.sharedobject.events.<A HREF="../org/eclipse/ecf/core/sharedobject/events/SharedObjectCommitEvent.html" title="class in org.eclipse.ecf.core.sharedobject.events">SharedObjectCommitEvent</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/sharedobject/events/SharedObjectCommitEvent.html#SharedObjectCommitEvent(org.eclipse.ecf.core.identity.ID)"><B>SharedObjectCommitEvent(ID)</B></A> - 
Constructor for class org.eclipse.ecf.core.sharedobject.events.<A HREF="../org/eclipse/ecf/core/sharedobject/events/SharedObjectCommitEvent.html" title="class in org.eclipse.ecf.core.sharedobject.events">SharedObjectCommitEvent</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectConnectException.html" title="class in org.eclipse.ecf.core.sharedobject"><B>SharedObjectConnectException</B></A> - Exception in <A HREF="../org/eclipse/ecf/core/sharedobject/package-summary.html">org.eclipse.ecf.core.sharedobject</A><DD>Exception thrown when creating connector between shared object<DT><A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectConnectException.html#SharedObjectConnectException()"><B>SharedObjectConnectException()</B></A> - 
Constructor for exception org.eclipse.ecf.core.sharedobject.<A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectConnectException.html" title="class in org.eclipse.ecf.core.sharedobject">SharedObjectConnectException</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectConnectException.html#SharedObjectConnectException(org.eclipse.core.runtime.IStatus)"><B>SharedObjectConnectException(IStatus)</B></A> - 
Constructor for exception org.eclipse.ecf.core.sharedobject.<A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectConnectException.html" title="class in org.eclipse.ecf.core.sharedobject">SharedObjectConnectException</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectConnectException.html#SharedObjectConnectException(java.lang.String)"><B>SharedObjectConnectException(String)</B></A> - 
Constructor for exception org.eclipse.ecf.core.sharedobject.<A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectConnectException.html" title="class in org.eclipse.ecf.core.sharedobject">SharedObjectConnectException</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectConnectException.html#SharedObjectConnectException(java.lang.String, java.lang.Throwable)"><B>SharedObjectConnectException(String, Throwable)</B></A> - 
Constructor for exception org.eclipse.ecf.core.sharedobject.<A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectConnectException.html" title="class in org.eclipse.ecf.core.sharedobject">SharedObjectConnectException</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectConnectException.html#SharedObjectConnectException(java.lang.Throwable)"><B>SharedObjectConnectException(Throwable)</B></A> - 
Constructor for exception org.eclipse.ecf.core.sharedobject.<A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectConnectException.html" title="class in org.eclipse.ecf.core.sharedobject">SharedObjectConnectException</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectContainerFactory.html" title="class in org.eclipse.ecf.core.sharedobject"><B>SharedObjectContainerFactory</B></A> - Class in <A HREF="../org/eclipse/ecf/core/sharedobject/package-summary.html">org.eclipse.ecf.core.sharedobject</A><DD>Factory for creating <A HREF="../org/eclipse/ecf/core/sharedobject/ISharedObjectContainer.html" title="interface in org.eclipse.ecf.core.sharedobject"><CODE>ISharedObjectContainer</CODE></A> instances.<DT><A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectContainerFactory.html#SharedObjectContainerFactory()"><B>SharedObjectContainerFactory()</B></A> - 
Constructor for class org.eclipse.ecf.core.sharedobject.<A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectContainerFactory.html" title="class in org.eclipse.ecf.core.sharedobject">SharedObjectContainerFactory</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectCreateException.html" title="class in org.eclipse.ecf.core.sharedobject"><B>SharedObjectCreateException</B></A> - Exception in <A HREF="../org/eclipse/ecf/core/sharedobject/package-summary.html">org.eclipse.ecf.core.sharedobject</A><DD>Exception thrown upon shared object create by <A HREF="../org/eclipse/ecf/core/sharedobject/ISharedObjectManager.html" title="interface in org.eclipse.ecf.core.sharedobject"><CODE>ISharedObjectManager</CODE></A><DT><A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectCreateException.html#SharedObjectCreateException()"><B>SharedObjectCreateException()</B></A> - 
Constructor for exception org.eclipse.ecf.core.sharedobject.<A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectCreateException.html" title="class in org.eclipse.ecf.core.sharedobject">SharedObjectCreateException</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectCreateException.html#SharedObjectCreateException(org.eclipse.core.runtime.IStatus)"><B>SharedObjectCreateException(IStatus)</B></A> - 
Constructor for exception org.eclipse.ecf.core.sharedobject.<A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectCreateException.html" title="class in org.eclipse.ecf.core.sharedobject">SharedObjectCreateException</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectCreateException.html#SharedObjectCreateException(java.lang.String)"><B>SharedObjectCreateException(String)</B></A> - 
Constructor for exception org.eclipse.ecf.core.sharedobject.<A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectCreateException.html" title="class in org.eclipse.ecf.core.sharedobject">SharedObjectCreateException</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectCreateException.html#SharedObjectCreateException(java.lang.String, java.lang.Throwable)"><B>SharedObjectCreateException(String, Throwable)</B></A> - 
Constructor for exception org.eclipse.ecf.core.sharedobject.<A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectCreateException.html" title="class in org.eclipse.ecf.core.sharedobject">SharedObjectCreateException</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectCreateException.html#SharedObjectCreateException(java.lang.Throwable)"><B>SharedObjectCreateException(Throwable)</B></A> - 
Constructor for exception org.eclipse.ecf.core.sharedobject.<A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectCreateException.html" title="class in org.eclipse.ecf.core.sharedobject">SharedObjectCreateException</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/datashare/SharedObjectDatashareContainerAdapter.html" title="class in org.eclipse.ecf.provider.datashare"><B>SharedObjectDatashareContainerAdapter</B></A> - Class in <A HREF="../org/eclipse/ecf/provider/datashare/package-summary.html">org.eclipse.ecf.provider.datashare</A><DD>&nbsp;<DT><A HREF="../org/eclipse/ecf/provider/datashare/SharedObjectDatashareContainerAdapter.html#SharedObjectDatashareContainerAdapter()"><B>SharedObjectDatashareContainerAdapter()</B></A> - 
Constructor for class org.eclipse.ecf.provider.datashare.<A HREF="../org/eclipse/ecf/provider/datashare/SharedObjectDatashareContainerAdapter.html" title="class in org.eclipse.ecf.provider.datashare">SharedObjectDatashareContainerAdapter</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/sharedobject/events/SharedObjectDeactivatedEvent.html" title="class in org.eclipse.ecf.core.sharedobject.events"><B>SharedObjectDeactivatedEvent</B></A> - Class in <A HREF="../org/eclipse/ecf/core/sharedobject/events/package-summary.html">org.eclipse.ecf.core.sharedobject.events</A><DD>&nbsp;<DT><A HREF="../org/eclipse/ecf/core/sharedobject/events/SharedObjectDeactivatedEvent.html#SharedObjectDeactivatedEvent(org.eclipse.ecf.core.identity.ID, org.eclipse.ecf.core.identity.ID)"><B>SharedObjectDeactivatedEvent(ID, ID)</B></A> - 
Constructor for class org.eclipse.ecf.core.sharedobject.events.<A HREF="../org/eclipse/ecf/core/sharedobject/events/SharedObjectDeactivatedEvent.html" title="class in org.eclipse.ecf.core.sharedobject.events">SharedObjectDeactivatedEvent</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectDescription.html" title="class in org.eclipse.ecf.core.sharedobject"><B>SharedObjectDescription</B></A> - Class in <A HREF="../org/eclipse/ecf/core/sharedobject/package-summary.html">org.eclipse.ecf.core.sharedobject</A><DD>Description of a local ISharedObject instance.<DT><A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectDescription.html#SharedObjectDescription(org.eclipse.ecf.core.sharedobject.SharedObjectTypeDescription, org.eclipse.ecf.core.identity.ID, java.util.Map)"><B>SharedObjectDescription(SharedObjectTypeDescription, ID, Map)</B></A> - 
Constructor for class org.eclipse.ecf.core.sharedobject.<A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectDescription.html" title="class in org.eclipse.ecf.core.sharedobject">SharedObjectDescription</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectDescription.html#SharedObjectDescription(org.eclipse.ecf.core.sharedobject.SharedObjectTypeDescription, org.eclipse.ecf.core.identity.ID)"><B>SharedObjectDescription(SharedObjectTypeDescription, ID)</B></A> - 
Constructor for class org.eclipse.ecf.core.sharedobject.<A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectDescription.html" title="class in org.eclipse.ecf.core.sharedobject">SharedObjectDescription</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectDescription.html#SharedObjectDescription(java.lang.String, org.eclipse.ecf.core.identity.ID, java.util.Map)"><B>SharedObjectDescription(String, ID, Map)</B></A> - 
Constructor for class org.eclipse.ecf.core.sharedobject.<A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectDescription.html" title="class in org.eclipse.ecf.core.sharedobject">SharedObjectDescription</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectDescription.html#SharedObjectDescription(java.lang.Class, org.eclipse.ecf.core.identity.ID, java.util.Map)"><B>SharedObjectDescription(Class, ID, Map)</B></A> - 
Constructor for class org.eclipse.ecf.core.sharedobject.<A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectDescription.html" title="class in org.eclipse.ecf.core.sharedobject">SharedObjectDescription</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectDisconnectException.html" title="class in org.eclipse.ecf.core.sharedobject"><B>SharedObjectDisconnectException</B></A> - Exception in <A HREF="../org/eclipse/ecf/core/sharedobject/package-summary.html">org.eclipse.ecf.core.sharedobject</A><DD>Exception thrown upon
 <A HREF="../org/eclipse/ecf/core/sharedobject/ISharedObjectManager.html#disconnectSharedObjects(org.eclipse.ecf.core.sharedobject.ISharedObjectConnector)"><CODE>ISharedObjectManager.disconnectSharedObjects(ISharedObjectConnector)</CODE></A><DT><A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectDisconnectException.html#SharedObjectDisconnectException()"><B>SharedObjectDisconnectException()</B></A> - 
Constructor for exception org.eclipse.ecf.core.sharedobject.<A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectDisconnectException.html" title="class in org.eclipse.ecf.core.sharedobject">SharedObjectDisconnectException</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectDisconnectException.html#SharedObjectDisconnectException(org.eclipse.core.runtime.IStatus)"><B>SharedObjectDisconnectException(IStatus)</B></A> - 
Constructor for exception org.eclipse.ecf.core.sharedobject.<A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectDisconnectException.html" title="class in org.eclipse.ecf.core.sharedobject">SharedObjectDisconnectException</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectDisconnectException.html#SharedObjectDisconnectException(java.lang.String)"><B>SharedObjectDisconnectException(String)</B></A> - 
Constructor for exception org.eclipse.ecf.core.sharedobject.<A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectDisconnectException.html" title="class in org.eclipse.ecf.core.sharedobject">SharedObjectDisconnectException</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectDisconnectException.html#SharedObjectDisconnectException(java.lang.String, java.lang.Throwable)"><B>SharedObjectDisconnectException(String, Throwable)</B></A> - 
Constructor for exception org.eclipse.ecf.core.sharedobject.<A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectDisconnectException.html" title="class in org.eclipse.ecf.core.sharedobject">SharedObjectDisconnectException</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectDisconnectException.html#SharedObjectDisconnectException(java.lang.Throwable)"><B>SharedObjectDisconnectException(Throwable)</B></A> - 
Constructor for exception org.eclipse.ecf.core.sharedobject.<A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectDisconnectException.html" title="class in org.eclipse.ecf.core.sharedobject">SharedObjectDisconnectException</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectFactory.html" title="class in org.eclipse.ecf.core.sharedobject"><B>SharedObjectFactory</B></A> - Class in <A HREF="../org/eclipse/ecf/core/sharedobject/package-summary.html">org.eclipse.ecf.core.sharedobject</A><DD>Factory for creating <A HREF="../org/eclipse/ecf/core/sharedobject/ISharedObject.html" title="interface in org.eclipse.ecf.core.sharedobject"><CODE>ISharedObject</CODE></A> instances.<DT><A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectFactory.html#SharedObjectFactory()"><B>SharedObjectFactory()</B></A> - 
Constructor for class org.eclipse.ecf.core.sharedobject.<A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectFactory.html" title="class in org.eclipse.ecf.core.sharedobject">SharedObjectFactory</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/sharedobject/events/ContainerSharedObjectMessageReceivingEvent.html#sharedObjectID"><B>sharedObjectID</B></A> - 
Variable in class org.eclipse.ecf.core.sharedobject.events.<A HREF="../org/eclipse/ecf/core/sharedobject/events/ContainerSharedObjectMessageReceivingEvent.html" title="class in org.eclipse.ecf.core.sharedobject.events">ContainerSharedObjectMessageReceivingEvent</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/sharedobject/events/ContainerSharedObjectMessageSendingEvent.html#sharedObjectID"><B>sharedObjectID</B></A> - 
Variable in class org.eclipse.ecf.core.sharedobject.events.<A HREF="../org/eclipse/ecf/core/sharedobject/events/ContainerSharedObjectMessageSendingEvent.html" title="class in org.eclipse.ecf.core.sharedobject.events">ContainerSharedObjectMessageSendingEvent</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/generic/SOConfig.html#sharedObjectID"><B>sharedObjectID</B></A> - 
Variable in class org.eclipse.ecf.provider.generic.<A HREF="../org/eclipse/ecf/provider/generic/SOConfig.html" title="class in org.eclipse.ecf.provider.generic">SOConfig</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/generic/SOContext.html#sharedObjectID"><B>sharedObjectID</B></A> - 
Variable in class org.eclipse.ecf.provider.generic.<A HREF="../org/eclipse/ecf/provider/generic/SOContext.html" title="class in org.eclipse.ecf.provider.generic">SOContext</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectInitException.html" title="class in org.eclipse.ecf.core.sharedobject"><B>SharedObjectInitException</B></A> - Exception in <A HREF="../org/eclipse/ecf/core/sharedobject/package-summary.html">org.eclipse.ecf.core.sharedobject</A><DD>Exception thrown during calls to
 <A HREF="../org/eclipse/ecf/core/sharedobject/ISharedObject.html#init(org.eclipse.ecf.core.sharedobject.ISharedObjectConfig)"><CODE>ISharedObject.init(ISharedObjectConfig)</CODE></A><DT><A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectInitException.html#SharedObjectInitException()"><B>SharedObjectInitException()</B></A> - 
Constructor for exception org.eclipse.ecf.core.sharedobject.<A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectInitException.html" title="class in org.eclipse.ecf.core.sharedobject">SharedObjectInitException</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectInitException.html#SharedObjectInitException(org.eclipse.core.runtime.IStatus)"><B>SharedObjectInitException(IStatus)</B></A> - 
Constructor for exception org.eclipse.ecf.core.sharedobject.<A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectInitException.html" title="class in org.eclipse.ecf.core.sharedobject">SharedObjectInitException</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectInitException.html#SharedObjectInitException(java.lang.String)"><B>SharedObjectInitException(String)</B></A> - 
Constructor for exception org.eclipse.ecf.core.sharedobject.<A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectInitException.html" title="class in org.eclipse.ecf.core.sharedobject">SharedObjectInitException</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectInitException.html#SharedObjectInitException(java.lang.String, java.lang.Throwable)"><B>SharedObjectInitException(String, Throwable)</B></A> - 
Constructor for exception org.eclipse.ecf.core.sharedobject.<A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectInitException.html" title="class in org.eclipse.ecf.core.sharedobject">SharedObjectInitException</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectInitException.html#SharedObjectInitException(java.lang.Throwable)"><B>SharedObjectInitException(Throwable)</B></A> - 
Constructor for exception org.eclipse.ecf.core.sharedobject.<A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectInitException.html" title="class in org.eclipse.ecf.core.sharedobject">SharedObjectInitException</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/generic/SOContainer.html#sharedObjectManager"><B>sharedObjectManager</B></A> - 
Variable in class org.eclipse.ecf.provider.generic.<A HREF="../org/eclipse/ecf/provider/generic/SOContainer.html" title="class in org.eclipse.ecf.provider.generic">SOContainer</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/sharedobject/events/SharedObjectManagerAddEvent.html" title="class in org.eclipse.ecf.core.sharedobject.events"><B>SharedObjectManagerAddEvent</B></A> - Class in <A HREF="../org/eclipse/ecf/core/sharedobject/events/package-summary.html">org.eclipse.ecf.core.sharedobject.events</A><DD>Shared object manager event sent/triggered when a shared object is added to
 container via
 <A HREF="../org/eclipse/ecf/core/sharedobject/ISharedObjectManager.html#addSharedObject(org.eclipse.ecf.core.identity.ID, org.eclipse.ecf.core.sharedobject.ISharedObject, java.util.Map)"><CODE>ISharedObjectManager.addSharedObject(ID, org.eclipse.ecf.core.sharedobject.ISharedObject, java.util.Map)</CODE></A>
 is called<DT><A HREF="../org/eclipse/ecf/core/sharedobject/events/SharedObjectManagerAddEvent.html#SharedObjectManagerAddEvent(org.eclipse.ecf.core.identity.ID, org.eclipse.ecf.core.identity.ID)"><B>SharedObjectManagerAddEvent(ID, ID)</B></A> - 
Constructor for class org.eclipse.ecf.core.sharedobject.events.<A HREF="../org/eclipse/ecf/core/sharedobject/events/SharedObjectManagerAddEvent.html" title="class in org.eclipse.ecf.core.sharedobject.events">SharedObjectManagerAddEvent</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/sharedobject/events/SharedObjectManagerConnectEvent.html" title="class in org.eclipse.ecf.core.sharedobject.events"><B>SharedObjectManagerConnectEvent</B></A> - Class in <A HREF="../org/eclipse/ecf/core/sharedobject/events/package-summary.html">org.eclipse.ecf.core.sharedobject.events</A><DD>Shared object manager connection event.<DT><A HREF="../org/eclipse/ecf/core/sharedobject/events/SharedObjectManagerConnectEvent.html#SharedObjectManagerConnectEvent(org.eclipse.ecf.core.identity.ID, org.eclipse.ecf.core.sharedobject.ISharedObjectConnector)"><B>SharedObjectManagerConnectEvent(ID, ISharedObjectConnector)</B></A> - 
Constructor for class org.eclipse.ecf.core.sharedobject.events.<A HREF="../org/eclipse/ecf/core/sharedobject/events/SharedObjectManagerConnectEvent.html" title="class in org.eclipse.ecf.core.sharedobject.events">SharedObjectManagerConnectEvent</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/sharedobject/events/SharedObjectManagerCreateEvent.html" title="class in org.eclipse.ecf.core.sharedobject.events"><B>SharedObjectManagerCreateEvent</B></A> - Class in <A HREF="../org/eclipse/ecf/core/sharedobject/events/package-summary.html">org.eclipse.ecf.core.sharedobject.events</A><DD>Manger create event.<DT><A HREF="../org/eclipse/ecf/core/sharedobject/events/SharedObjectManagerCreateEvent.html#SharedObjectManagerCreateEvent(org.eclipse.ecf.core.identity.ID, org.eclipse.ecf.core.identity.ID)"><B>SharedObjectManagerCreateEvent(ID, ID)</B></A> - 
Constructor for class org.eclipse.ecf.core.sharedobject.events.<A HREF="../org/eclipse/ecf/core/sharedobject/events/SharedObjectManagerCreateEvent.html" title="class in org.eclipse.ecf.core.sharedobject.events">SharedObjectManagerCreateEvent</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/sharedobject/events/SharedObjectManagerDisconnectEvent.html" title="class in org.eclipse.ecf.core.sharedobject.events"><B>SharedObjectManagerDisconnectEvent</B></A> - Class in <A HREF="../org/eclipse/ecf/core/sharedobject/events/package-summary.html">org.eclipse.ecf.core.sharedobject.events</A><DD>Shared object manager connection event.<DT><A HREF="../org/eclipse/ecf/core/sharedobject/events/SharedObjectManagerDisconnectEvent.html#SharedObjectManagerDisconnectEvent(org.eclipse.ecf.core.identity.ID, org.eclipse.ecf.core.sharedobject.ISharedObjectConnector)"><B>SharedObjectManagerDisconnectEvent(ID, ISharedObjectConnector)</B></A> - 
Constructor for class org.eclipse.ecf.core.sharedobject.events.<A HREF="../org/eclipse/ecf/core/sharedobject/events/SharedObjectManagerDisconnectEvent.html" title="class in org.eclipse.ecf.core.sharedobject.events">SharedObjectManagerDisconnectEvent</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/sharedobject/events/SharedObjectManagerRemoveEvent.html" title="class in org.eclipse.ecf.core.sharedobject.events"><B>SharedObjectManagerRemoveEvent</B></A> - Class in <A HREF="../org/eclipse/ecf/core/sharedobject/events/package-summary.html">org.eclipse.ecf.core.sharedobject.events</A><DD>Shared object manager event sent/triggered when a shared object is removed
 from a container via <A HREF="../org/eclipse/ecf/core/sharedobject/ISharedObjectManager.html#removeSharedObject(org.eclipse.ecf.core.identity.ID)"><CODE>ISharedObjectManager.removeSharedObject(ID)</CODE></A> is
 called<DT><A HREF="../org/eclipse/ecf/core/sharedobject/events/SharedObjectManagerRemoveEvent.html#SharedObjectManagerRemoveEvent(org.eclipse.ecf.core.identity.ID, org.eclipse.ecf.core.identity.ID)"><B>SharedObjectManagerRemoveEvent(ID, ID)</B></A> - 
Constructor for class org.eclipse.ecf.core.sharedobject.events.<A HREF="../org/eclipse/ecf/core/sharedobject/events/SharedObjectManagerRemoveEvent.html" title="class in org.eclipse.ecf.core.sharedobject.events">SharedObjectManagerRemoveEvent</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/generic/SOContainer.html#sharedObjectMessageSerializer"><B>sharedObjectMessageSerializer</B></A> - 
Variable in class org.eclipse.ecf.provider.generic.<A HREF="../org/eclipse/ecf/provider/generic/SOContainer.html" title="class in org.eclipse.ecf.provider.generic">SOContainer</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectMsg.html" title="class in org.eclipse.ecf.core.sharedobject"><B>SharedObjectMsg</B></A> - Class in <A HREF="../org/eclipse/ecf/core/sharedobject/package-summary.html">org.eclipse.ecf.core.sharedobject</A><DD>Shared Object Message.<DT><A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectMsg.html#SharedObjectMsg()"><B>SharedObjectMsg()</B></A> - 
Constructor for class org.eclipse.ecf.core.sharedobject.<A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectMsg.html" title="class in org.eclipse.ecf.core.sharedobject">SharedObjectMsg</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectMsg.html#SharedObjectMsg(java.lang.String, java.lang.String, java.lang.Object[])"><B>SharedObjectMsg(String, String, Object[])</B></A> - 
Constructor for class org.eclipse.ecf.core.sharedobject.<A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectMsg.html" title="class in org.eclipse.ecf.core.sharedobject">SharedObjectMsg</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectMsgEvent.html" title="class in org.eclipse.ecf.core.sharedobject"><B>SharedObjectMsgEvent</B></A> - Class in <A HREF="../org/eclipse/ecf/core/sharedobject/package-summary.html">org.eclipse.ecf.core.sharedobject</A><DD>Event type to represent messages sent between shared objects<DT><A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectMsgEvent.html#SharedObjectMsgEvent(org.eclipse.ecf.core.identity.ID, org.eclipse.ecf.core.identity.ID, org.eclipse.ecf.core.sharedobject.SharedObjectMsg)"><B>SharedObjectMsgEvent(ID, ID, SharedObjectMsg)</B></A> - 
Constructor for class org.eclipse.ecf.core.sharedobject.<A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectMsgEvent.html" title="class in org.eclipse.ecf.core.sharedobject">SharedObjectMsgEvent</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectMsgEventProcessor.html" title="class in org.eclipse.ecf.core.sharedobject"><B>SharedObjectMsgEventProcessor</B></A> - Class in <A HREF="../org/eclipse/ecf/core/sharedobject/package-summary.html">org.eclipse.ecf.core.sharedobject</A><DD>Event processor to process SharedObjectMsgEvents<DT><A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectMsgEventProcessor.html#SharedObjectMsgEventProcessor(org.eclipse.ecf.core.sharedobject.BaseSharedObject)"><B>SharedObjectMsgEventProcessor(BaseSharedObject)</B></A> - 
Constructor for class org.eclipse.ecf.core.sharedobject.<A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectMsgEventProcessor.html" title="class in org.eclipse.ecf.core.sharedobject">SharedObjectMsgEventProcessor</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/generic/SOContainer.html#sharedObjectThreadGroup"><B>sharedObjectThreadGroup</B></A> - 
Variable in class org.eclipse.ecf.provider.generic.<A HREF="../org/eclipse/ecf/provider/generic/SOContainer.html" title="class in org.eclipse.ecf.provider.generic">SOContainer</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectTypeDescription.html" title="class in org.eclipse.ecf.core.sharedobject"><B>SharedObjectTypeDescription</B></A> - Class in <A HREF="../org/eclipse/ecf/core/sharedobject/package-summary.html">org.eclipse.ecf.core.sharedobject</A><DD>Description of shared object type.<DT><A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectTypeDescription.html#SharedObjectTypeDescription(java.lang.String, org.eclipse.ecf.core.sharedobject.provider.ISharedObjectInstantiator, java.lang.String, java.util.Map)"><B>SharedObjectTypeDescription(String, ISharedObjectInstantiator, String, Map)</B></A> - 
Constructor for class org.eclipse.ecf.core.sharedobject.<A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectTypeDescription.html" title="class in org.eclipse.ecf.core.sharedobject">SharedObjectTypeDescription</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectTypeDescription.html#SharedObjectTypeDescription(java.lang.String, java.util.Map)"><B>SharedObjectTypeDescription(String, Map)</B></A> - 
Constructor for class org.eclipse.ecf.core.sharedobject.<A HREF="../org/eclipse/ecf/core/sharedobject/SharedObjectTypeDescription.html" title="class in org.eclipse.ecf.core.sharedobject">SharedObjectTypeDescription</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/server/generic/app/Connector.html#shouldRegisterForDiscovery()"><B>shouldRegisterForDiscovery()</B></A> - 
Method in class org.eclipse.ecf.server.generic.app.<A HREF="../org/eclipse/ecf/server/generic/app/Connector.html" title="class in org.eclipse.ecf.server.generic.app">Connector</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/ui/wizards/AbstractConnectWizardPage.html#shouldRequestPassword()"><B>shouldRequestPassword()</B></A> - 
Method in class org.eclipse.ecf.ui.wizards.<A HREF="../org/eclipse/ecf/ui/wizards/AbstractConnectWizardPage.html" title="class in org.eclipse.ecf.ui.wizards">AbstractConnectWizardPage</A>
<DD>Checks
<DT><A HREF="../org/eclipse/ecf/ui/wizards/AbstractConnectWizardPage.html#shouldRequestUsername()"><B>shouldRequestUsername()</B></A> - 
Method in class org.eclipse.ecf.ui.wizards.<A HREF="../org/eclipse/ecf/ui/wizards/AbstractConnectWizardPage.html" title="class in org.eclipse.ecf.ui.wizards">AbstractConnectWizardPage</A>
<DD>Returns whether the created <A HREF="../org/eclipse/ecf/core/IContainer.html" title="interface in org.eclipse.ecf.core"><CODE>IContainer</CODE></A> needs a username for
 authentication purposes upon connecting.
<DT><A HREF="../org/eclipse/ecf/core/util/Trace.html#shouldTrace(java.lang.String)"><B>shouldTrace(String)</B></A> - 
Static method in class org.eclipse.ecf.core.util.<A HREF="../org/eclipse/ecf/core/util/Trace.html" title="class in org.eclipse.ecf.core.util">Trace</A>
<DD>Retrieves a Boolean value indicating whether tracing is enabled for the
 specified plug-in.
<DT><A HREF="../org/eclipse/ecf/core/util/Trace.html#shouldTrace(java.lang.String, java.lang.String)"><B>shouldTrace(String, String)</B></A> - 
Static method in class org.eclipse.ecf.core.util.<A HREF="../org/eclipse/ecf/core/util/Trace.html" title="class in org.eclipse.ecf.core.util">Trace</A>
<DD>Retrieves a Boolean value indicating whether tracing is enabled for the
 specified debug option of the specified plug-in.
<DT><A HREF="../org/eclipse/ecf/core/util/Trace.html#shouldTrace0(java.lang.String)"><B>shouldTrace0(String)</B></A> - 
Static method in class org.eclipse.ecf.core.util.<A HREF="../org/eclipse/ecf/core/util/Trace.html" title="class in org.eclipse.ecf.core.util">Trace</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/presence/collab/ui/url/URLShare.html#showDialogAndSendURL(java.lang.String, org.eclipse.ecf.core.identity.ID)"><B>showDialogAndSendURL(String, ID)</B></A> - 
Method in class org.eclipse.ecf.presence.collab.ui.url.<A HREF="../org/eclipse/ecf/presence/collab/ui/url/URLShare.html" title="class in org.eclipse.ecf.presence.collab.ui.url">URLShare</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/presence/ui/chatroom/ChatRoomManagerUI.html#showForTarget(org.eclipse.ecf.core.identity.ID)"><B>showForTarget(ID)</B></A> - 
Method in class org.eclipse.ecf.presence.ui.chatroom.<A HREF="../org/eclipse/ecf/presence/ui/chatroom/ChatRoomManagerUI.html" title="class in org.eclipse.ecf.presence.ui.chatroom">ChatRoomManagerUI</A>
<DD>Show a chat room manager UI for given target.
<DT><A HREF="../org/eclipse/ecf/ui/screencapture/ShowImageShell.html#showImage()"><B>showImage()</B></A> - 
Method in class org.eclipse.ecf.ui.screencapture.<A HREF="../org/eclipse/ecf/ui/screencapture/ShowImageShell.html" title="class in org.eclipse.ecf.ui.screencapture">ShowImageShell</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/ui/screencapture/ShowImageShell.html" title="class in org.eclipse.ecf.ui.screencapture"><B>ShowImageShell</B></A> - Class in <A HREF="../org/eclipse/ecf/ui/screencapture/package-summary.html">org.eclipse.ecf.ui.screencapture</A><DD>&nbsp;<DT><A HREF="../org/eclipse/ecf/ui/screencapture/ShowImageShell.html#ShowImageShell(org.eclipse.swt.widgets.Display, org.eclipse.ecf.core.identity.ID, org.eclipse.swt.events.DisposeListener)"><B>ShowImageShell(Display, ID, DisposeListener)</B></A> - 
Constructor for class org.eclipse.ecf.ui.screencapture.<A HREF="../org/eclipse/ecf/ui/screencapture/ShowImageShell.html" title="class in org.eclipse.ecf.ui.screencapture">ShowImageShell</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/presence/ui/MessagesView.html#showMessage(org.eclipse.ecf.presence.im.IChatMessage)"><B>showMessage(IChatMessage)</B></A> - 
Method in class org.eclipse.ecf.presence.ui.<A HREF="../org/eclipse/ecf/presence/ui/MessagesView.html" title="class in org.eclipse.ecf.presence.ui">MessagesView</A>
<DD>Display a chat message from a remote user in their designated chat box.
<DT><A HREF="../org/eclipse/ecf/presence/ui/UserSearchView.html#showMessage(java.lang.String)"><B>showMessage(String)</B></A> - 
Method in class org.eclipse.ecf.presence.ui.<A HREF="../org/eclipse/ecf/presence/ui/UserSearchView.html" title="class in org.eclipse.ecf.presence.ui">UserSearchView</A>
<DD>Show a message into the view before show the result in a tree view
<DT><A HREF="../org/eclipse/ecf/provider/zookeeper/core/ZooDiscoveryContainer.html#shutdown()"><B>shutdown()</B></A> - 
Method in class org.eclipse.ecf.provider.zookeeper.core.<A HREF="../org/eclipse/ecf/provider/zookeeper/core/ZooDiscoveryContainer.html" title="class in org.eclipse.ecf.provider.zookeeper.core">ZooDiscoveryContainer</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/server/generic/app/AbstractGenericServerApplication.html#shutdown()"><B>shutdown()</B></A> - 
Method in class org.eclipse.ecf.server.generic.app.<A HREF="../org/eclipse/ecf/server/generic/app/AbstractGenericServerApplication.html" title="class in org.eclipse.ecf.server.generic.app">AbstractGenericServerApplication</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/events/socket/AbstractSocketWrapper.html#shutdownInput()"><B>shutdownInput()</B></A> - 
Method in class org.eclipse.ecf.provider.filetransfer.events.socket.<A HREF="../org/eclipse/ecf/provider/filetransfer/events/socket/AbstractSocketWrapper.html" title="class in org.eclipse.ecf.provider.filetransfer.events.socket">AbstractSocketWrapper</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/events/socket/AbstractSocketWrapper.html#shutdownOutput()"><B>shutdownOutput()</B></A> - 
Method in class org.eclipse.ecf.provider.filetransfer.events.socket.<A HREF="../org/eclipse/ecf/provider/filetransfer/events/socket/AbstractSocketWrapper.html" title="class in org.eclipse.ecf.provider.filetransfer.events.socket">AbstractSocketWrapper</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/presence/search/SimpleCriterion.html" title="class in org.eclipse.ecf.presence.search"><B>SimpleCriterion</B></A> - Class in <A HREF="../org/eclipse/ecf/presence/search/package-summary.html">org.eclipse.ecf.presence.search</A><DD>Base class implementation of <A HREF="../org/eclipse/ecf/presence/search/ICriterion.html" title="interface in org.eclipse.ecf.presence.search"><CODE>ICriterion</CODE></A> for simple comparisons.<DT><A HREF="../org/eclipse/ecf/presence/search/SimpleCriterion.html#SimpleCriterion(java.lang.String, java.lang.String, java.lang.String, boolean)"><B>SimpleCriterion(String, String, String, boolean)</B></A> - 
Constructor for class org.eclipse.ecf.presence.search.<A HREF="../org/eclipse/ecf/presence/search/SimpleCriterion.html" title="class in org.eclipse.ecf.presence.search">SimpleCriterion</A>
<DD>Constructor for a instance of <A HREF="../org/eclipse/ecf/presence/search/ICriterion.html" title="interface in org.eclipse.ecf.presence.search"><CODE>ICriterion</CODE></A>
<DT><A HREF="../org/eclipse/ecf/presence/search/SimpleCriterion.html#SimpleCriterion(java.lang.String, java.lang.String, java.lang.String)"><B>SimpleCriterion(String, String, String)</B></A> - 
Constructor for class org.eclipse.ecf.presence.search.<A HREF="../org/eclipse/ecf/presence/search/SimpleCriterion.html" title="class in org.eclipse.ecf.presence.search">SimpleCriterion</A>
<DD>Constructor for a instance of <A HREF="../org/eclipse/ecf/presence/search/ICriterion.html" title="interface in org.eclipse.ecf.presence.search"><CODE>ICriterion</CODE></A>.
<DT><A HREF="../org/eclipse/ecf/core/sharedobject/util/SimpleFIFOQueue.html" title="class in org.eclipse.ecf.core.sharedobject.util"><B>SimpleFIFOQueue</B></A> - Class in <A HREF="../org/eclipse/ecf/core/sharedobject/util/package-summary.html">org.eclipse.ecf.core.sharedobject.util</A><DD>&nbsp;<DT><A HREF="../org/eclipse/ecf/core/sharedobject/util/SimpleFIFOQueue.html#SimpleFIFOQueue()"><B>SimpleFIFOQueue()</B></A> - 
Constructor for class org.eclipse.ecf.core.sharedobject.util.<A HREF="../org/eclipse/ecf/core/sharedobject/util/SimpleFIFOQueue.html" title="class in org.eclipse.ecf.core.sharedobject.util">SimpleFIFOQueue</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/server/generic/SimpleGenericServer.html" title="class in org.eclipse.ecf.server.generic"><B>SimpleGenericServer</B></A> - Class in <A HREF="../org/eclipse/ecf/server/generic/package-summary.html">org.eclipse.ecf.server.generic</A><DD>&nbsp;<DT><A HREF="../org/eclipse/ecf/server/generic/SimpleGenericServer.html#SimpleGenericServer(java.lang.String, int)"><B>SimpleGenericServer(String, int)</B></A> - 
Constructor for class org.eclipse.ecf.server.generic.<A HREF="../org/eclipse/ecf/server/generic/SimpleGenericServer.html" title="class in org.eclipse.ecf.server.generic">SimpleGenericServer</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/discovery/SingletonDiscoveryContainer.html" title="class in org.eclipse.ecf.provider.discovery"><B>SingletonDiscoveryContainer</B></A> - Class in <A HREF="../org/eclipse/ecf/provider/discovery/package-summary.html">org.eclipse.ecf.provider.discovery</A><DD>&nbsp;<DT><A HREF="../org/eclipse/ecf/provider/discovery/SingletonDiscoveryContainer.html#SingletonDiscoveryContainer(org.eclipse.ecf.core.IContainer)"><B>SingletonDiscoveryContainer(IContainer)</B></A> - 
Constructor for class org.eclipse.ecf.provider.discovery.<A HREF="../org/eclipse/ecf/provider/discovery/SingletonDiscoveryContainer.html" title="class in org.eclipse.ecf.provider.discovery">SingletonDiscoveryContainer</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/discovery/SingletonDiscoveryContainerInstantiator.html" title="class in org.eclipse.ecf.provider.discovery"><B>SingletonDiscoveryContainerInstantiator</B></A> - Class in <A HREF="../org/eclipse/ecf/provider/discovery/package-summary.html">org.eclipse.ecf.provider.discovery</A><DD>&nbsp;<DT><A HREF="../org/eclipse/ecf/provider/discovery/SingletonDiscoveryContainerInstantiator.html#SingletonDiscoveryContainerInstantiator()"><B>SingletonDiscoveryContainerInstantiator()</B></A> - 
Constructor for class org.eclipse.ecf.provider.discovery.<A HREF="../org/eclipse/ecf/provider/discovery/SingletonDiscoveryContainerInstantiator.html" title="class in org.eclipse.ecf.provider.discovery">SingletonDiscoveryContainerInstantiator</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/sharedobject/util/IQueueDequeue.html#size()"><B>size()</B></A> - 
Method in interface org.eclipse.ecf.core.sharedobject.util.<A HREF="../org/eclipse/ecf/core/sharedobject/util/IQueueDequeue.html" title="interface in org.eclipse.ecf.core.sharedobject.util">IQueueDequeue</A>
<DD>Provide the current size of the queue (the number of Events) currently on
 the queue.
<DT><A HREF="../org/eclipse/ecf/core/sharedobject/util/IQueueEnqueue.html#size()"><B>size()</B></A> - 
Method in interface org.eclipse.ecf.core.sharedobject.util.<A HREF="../org/eclipse/ecf/core/sharedobject/util/IQueueEnqueue.html" title="interface in org.eclipse.ecf.core.sharedobject.util">IQueueEnqueue</A>
<DD>Return size of contents in queue
<DT><A HREF="../org/eclipse/ecf/core/sharedobject/util/QueueEnqueueImpl.html#size()"><B>size()</B></A> - 
Method in class org.eclipse.ecf.core.sharedobject.util.<A HREF="../org/eclipse/ecf/core/sharedobject/util/QueueEnqueueImpl.html" title="class in org.eclipse.ecf.core.sharedobject.util">QueueEnqueueImpl</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/sharedobject/util/SimpleFIFOQueue.html#size()"><B>size()</B></A> - 
Method in class org.eclipse.ecf.core.sharedobject.util.<A HREF="../org/eclipse/ecf/core/sharedobject/util/SimpleFIFOQueue.html" title="class in org.eclipse.ecf.core.sharedobject.util">SimpleFIFOQueue</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/discovery/IServiceProperties.html#size()"><B>size()</B></A> - 
Method in interface org.eclipse.ecf.discovery.<A HREF="../org/eclipse/ecf/discovery/IServiceProperties.html" title="interface in org.eclipse.ecf.discovery">IServiceProperties</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/discovery/ServiceProperties.html#size()"><B>size()</B></A> - 
Method in class org.eclipse.ecf.discovery.<A HREF="../org/eclipse/ecf/discovery/ServiceProperties.html" title="class in org.eclipse.ecf.discovery">ServiceProperties</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/remoteservice/util/tracker/RemoteServiceTracker.html#size()"><B>size()</B></A> - 
Method in class org.eclipse.ecf.remoteservice.util.tracker.<A HREF="../org/eclipse/ecf/remoteservice/util/tracker/RemoteServiceTracker.html" title="class in org.eclipse.ecf.remoteservice.util.tracker">RemoteServiceTracker</A>
<DD>Return the number of services being tracked by this
 <code>RemoteServiceTracker</code> object.
<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/util/PollingInputStream.html#skip(long)"><B>skip(long)</B></A> - 
Method in class org.eclipse.ecf.provider.filetransfer.util.<A HREF="../org/eclipse/ecf/provider/filetransfer/util/PollingInputStream.html" title="class in org.eclipse.ecf.provider.filetransfer.util">PollingInputStream</A>
<DD>Wraps the underlying stream's method.
<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/util/TimeoutInputStream.html#skip(long)"><B>skip(long)</B></A> - 
Method in class org.eclipse.ecf.provider.filetransfer.util.<A HREF="../org/eclipse/ecf/provider/filetransfer/util/TimeoutInputStream.html" title="class in org.eclipse.ecf.provider.filetransfer.util">TimeoutInputStream</A>
<DD>Skips multiple bytes in the stream.
<DT><A HREF="../org/eclipse/ecf/provider/xmpp/identity/XMPPRoomID.html#SLASH"><B>SLASH</B></A> - 
Static variable in class org.eclipse.ecf.provider.xmpp.identity.<A HREF="../org/eclipse/ecf/provider/xmpp/identity/XMPPRoomID.html" title="class in org.eclipse.ecf.provider.xmpp.identity">XMPPRoomID</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/datashare/DatashareContainerAdapter.html#SO_CREATION_ERROR"><B>SO_CREATION_ERROR</B></A> - 
Static variable in class org.eclipse.ecf.provider.datashare.<A HREF="../org/eclipse/ecf/provider/datashare/DatashareContainerAdapter.html" title="class in org.eclipse.ecf.provider.datashare">DatashareContainerAdapter</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/comm/tcp/Client.html#socket"><B>socket</B></A> - 
Variable in class org.eclipse.ecf.provider.comm.tcp.<A HREF="../org/eclipse/ecf/provider/comm/tcp/Client.html" title="class in org.eclipse.ecf.provider.comm.tcp">Client</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/events/socket/SocketClosedEvent.html" title="class in org.eclipse.ecf.provider.filetransfer.events.socket"><B>SocketClosedEvent</B></A> - Class in <A HREF="../org/eclipse/ecf/provider/filetransfer/events/socket/package-summary.html">org.eclipse.ecf.provider.filetransfer.events.socket</A><DD>&nbsp;<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/events/socket/SocketClosedEvent.html#SocketClosedEvent(org.eclipse.ecf.filetransfer.events.socket.ISocketEventSource, java.net.Socket, java.net.Socket)"><B>SocketClosedEvent(ISocketEventSource, Socket, Socket)</B></A> - 
Constructor for class org.eclipse.ecf.provider.filetransfer.events.socket.<A HREF="../org/eclipse/ecf/provider/filetransfer/events/socket/SocketClosedEvent.html" title="class in org.eclipse.ecf.provider.filetransfer.events.socket">SocketClosedEvent</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/events/socket/SocketConnectedEvent.html" title="class in org.eclipse.ecf.provider.filetransfer.events.socket"><B>SocketConnectedEvent</B></A> - Class in <A HREF="../org/eclipse/ecf/provider/filetransfer/events/socket/package-summary.html">org.eclipse.ecf.provider.filetransfer.events.socket</A><DD>&nbsp;<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/events/socket/SocketConnectedEvent.html#SocketConnectedEvent(org.eclipse.ecf.filetransfer.events.socket.ISocketEventSource, java.net.Socket, java.net.Socket)"><B>SocketConnectedEvent(ISocketEventSource, Socket, Socket)</B></A> - 
Constructor for class org.eclipse.ecf.provider.filetransfer.events.socket.<A HREF="../org/eclipse/ecf/provider/filetransfer/events/socket/SocketConnectedEvent.html" title="class in org.eclipse.ecf.provider.filetransfer.events.socket">SocketConnectedEvent</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/events/socket/SocketCreatedEvent.html" title="class in org.eclipse.ecf.provider.filetransfer.events.socket"><B>SocketCreatedEvent</B></A> - Class in <A HREF="../org/eclipse/ecf/provider/filetransfer/events/socket/package-summary.html">org.eclipse.ecf.provider.filetransfer.events.socket</A><DD>&nbsp;<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/events/socket/SocketCreatedEvent.html#SocketCreatedEvent(org.eclipse.ecf.filetransfer.events.socket.ISocketEventSource, java.net.Socket)"><B>SocketCreatedEvent(ISocketEventSource, Socket)</B></A> - 
Constructor for class org.eclipse.ecf.provider.filetransfer.events.socket.<A HREF="../org/eclipse/ecf/provider/filetransfer/events/socket/SocketCreatedEvent.html" title="class in org.eclipse.ecf.provider.filetransfer.events.socket">SocketCreatedEvent</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/events/socket/SocketEventCreateUtil.html" title="class in org.eclipse.ecf.provider.filetransfer.events.socket"><B>SocketEventCreateUtil</B></A> - Class in <A HREF="../org/eclipse/ecf/provider/filetransfer/events/socket/package-summary.html">org.eclipse.ecf.provider.filetransfer.events.socket</A><DD>&nbsp;<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/events/socket/SocketEventCreateUtil.html#SocketEventCreateUtil()"><B>SocketEventCreateUtil()</B></A> - 
Constructor for class org.eclipse.ecf.provider.filetransfer.events.socket.<A HREF="../org/eclipse/ecf/provider/filetransfer/events/socket/SocketEventCreateUtil.html" title="class in org.eclipse.ecf.provider.filetransfer.events.socket">SocketEventCreateUtil</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/events/socket/SocketEventSource.html" title="class in org.eclipse.ecf.provider.filetransfer.events.socket"><B>SocketEventSource</B></A> - Class in <A HREF="../org/eclipse/ecf/provider/filetransfer/events/socket/package-summary.html">org.eclipse.ecf.provider.filetransfer.events.socket</A><DD>&nbsp;<DT><A HREF="../org/eclipse/ecf/provider/filetransfer/events/socket/SocketEventSource.html#SocketEventSource()"><B>SocketEventSource()</B></A> - 
Constructor for class org.eclipse.ecf.provider.filetransfer.events.socket.<A HREF="../org/eclipse/ecf/provider/filetransfer/events/socket/SocketEventSource.html" title="class in org.eclipse.ecf.provider.filetransfer.events.socket">SocketEventSource</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/comm/tcp/SocketFactory.html" title="class in org.eclipse.ecf.provider.comm.tcp"><B>SocketFactory</B></A> - Class in <A HREF="../org/eclipse/ecf/provider/comm/tcp/package-summary.html">org.eclipse.ecf.provider.comm.tcp</A><DD>&nbsp;<DT><A HREF="../org/eclipse/ecf/provider/comm/tcp/SocketFactory.html#SocketFactory()"><B>SocketFactory()</B></A> - 
Constructor for class org.eclipse.ecf.provider.comm.tcp.<A HREF="../org/eclipse/ecf/provider/comm/tcp/SocketFactory.html" title="class in org.eclipse.ecf.provider.comm.tcp">SocketFactory</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/util/Proxy.Type.html#SOCKS"><B>SOCKS</B></A> - 
Static variable in class org.eclipse.ecf.core.util.<A HREF="../org/eclipse/ecf/core/util/Proxy.Type.html" title="class in org.eclipse.ecf.core.util">Proxy.Type</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/generic/SOConfig.html" title="class in org.eclipse.ecf.provider.generic"><B>SOConfig</B></A> - Class in <A HREF="../org/eclipse/ecf/provider/generic/package-summary.html">org.eclipse.ecf.provider.generic</A><DD>&nbsp;<DT><A HREF="../org/eclipse/ecf/provider/generic/SOConfig.html#SOConfig(org.eclipse.ecf.core.identity.ID, org.eclipse.ecf.core.identity.ID, org.eclipse.ecf.provider.generic.SOContainer, java.util.Map)"><B>SOConfig(ID, ID, SOContainer, Map)</B></A> - 
Constructor for class org.eclipse.ecf.provider.generic.<A HREF="../org/eclipse/ecf/provider/generic/SOConfig.html" title="class in org.eclipse.ecf.provider.generic">SOConfig</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/generic/SOConnector.html" title="class in org.eclipse.ecf.provider.generic"><B>SOConnector</B></A> - Class in <A HREF="../org/eclipse/ecf/provider/generic/package-summary.html">org.eclipse.ecf.provider.generic</A><DD>&nbsp;<DT><A HREF="../org/eclipse/ecf/provider/generic/SOConnector.html#SOConnector(org.eclipse.ecf.core.identity.ID, org.eclipse.ecf.core.identity.ID[], org.eclipse.ecf.core.sharedobject.util.IQueueEnqueue[])"><B>SOConnector(ID, ID[], IQueueEnqueue[])</B></A> - 
Constructor for class org.eclipse.ecf.provider.generic.<A HREF="../org/eclipse/ecf/provider/generic/SOConnector.html" title="class in org.eclipse.ecf.provider.generic">SOConnector</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/generic/SOContainer.html" title="class in org.eclipse.ecf.provider.generic"><B>SOContainer</B></A> - Class in <A HREF="../org/eclipse/ecf/provider/generic/package-summary.html">org.eclipse.ecf.provider.generic</A><DD>&nbsp;<DT><A HREF="../org/eclipse/ecf/provider/generic/SOContainer.html#SOContainer(org.eclipse.ecf.core.sharedobject.ISharedObjectContainerConfig)"><B>SOContainer(ISharedObjectContainerConfig)</B></A> - 
Constructor for class org.eclipse.ecf.provider.generic.<A HREF="../org/eclipse/ecf/provider/generic/SOContainer.html" title="class in org.eclipse.ecf.provider.generic">SOContainer</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/generic/SOContainerConfig.html" title="class in org.eclipse.ecf.provider.generic"><B>SOContainerConfig</B></A> - Class in <A HREF="../org/eclipse/ecf/provider/generic/package-summary.html">org.eclipse.ecf.provider.generic</A><DD>&nbsp;<DT><A HREF="../org/eclipse/ecf/provider/generic/SOContainerConfig.html#SOContainerConfig(org.eclipse.ecf.core.identity.ID, java.util.Map)"><B>SOContainerConfig(ID, Map)</B></A> - 
Constructor for class org.eclipse.ecf.provider.generic.<A HREF="../org/eclipse/ecf/provider/generic/SOContainerConfig.html" title="class in org.eclipse.ecf.provider.generic">SOContainerConfig</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/generic/SOContainerConfig.html#SOContainerConfig(org.eclipse.ecf.core.identity.ID)"><B>SOContainerConfig(ID)</B></A> - 
Constructor for class org.eclipse.ecf.provider.generic.<A HREF="../org/eclipse/ecf/provider/generic/SOContainerConfig.html" title="class in org.eclipse.ecf.provider.generic">SOContainerConfig</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/generic/SOContainerGroup.html" title="class in org.eclipse.ecf.provider.generic"><B>SOContainerGroup</B></A> - Class in <A HREF="../org/eclipse/ecf/provider/generic/package-summary.html">org.eclipse.ecf.provider.generic</A><DD>&nbsp;<DT><A HREF="../org/eclipse/ecf/provider/generic/SOContainerGroup.html#SOContainerGroup(java.lang.String)"><B>SOContainerGroup(String)</B></A> - 
Constructor for class org.eclipse.ecf.provider.generic.<A HREF="../org/eclipse/ecf/provider/generic/SOContainerGroup.html" title="class in org.eclipse.ecf.provider.generic">SOContainerGroup</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/generic/SOContext.html" title="class in org.eclipse.ecf.provider.generic"><B>SOContext</B></A> - Class in <A HREF="../org/eclipse/ecf/provider/generic/package-summary.html">org.eclipse.ecf.provider.generic</A><DD>&nbsp;<DT><A HREF="../org/eclipse/ecf/provider/generic/SOContext.html#SOContext(org.eclipse.ecf.core.identity.ID, org.eclipse.ecf.core.identity.ID, org.eclipse.ecf.provider.generic.SOContainer, java.util.Map, org.eclipse.ecf.core.sharedobject.util.IQueueEnqueue)"><B>SOContext(ID, ID, SOContainer, Map, IQueueEnqueue)</B></A> - 
Constructor for class org.eclipse.ecf.provider.generic.<A HREF="../org/eclipse/ecf/provider/generic/SOContext.html" title="class in org.eclipse.ecf.provider.generic">SOContext</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/generic/SOManager.html" title="class in org.eclipse.ecf.provider.generic"><B>SOManager</B></A> - Class in <A HREF="../org/eclipse/ecf/provider/generic/package-summary.html">org.eclipse.ecf.provider.generic</A><DD>&nbsp;<DT><A HREF="../org/eclipse/ecf/provider/generic/SOManager.html#SOManager(org.eclipse.ecf.provider.generic.SOContainer)"><B>SOManager(SOContainer)</B></A> - 
Constructor for class org.eclipse.ecf.provider.generic.<A HREF="../org/eclipse/ecf/provider/generic/SOManager.html" title="class in org.eclipse.ecf.provider.generic">SOManager</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/generic/SOWrapper.html" title="class in org.eclipse.ecf.provider.generic"><B>SOWrapper</B></A> - Class in <A HREF="../org/eclipse/ecf/provider/generic/package-summary.html">org.eclipse.ecf.provider.generic</A><DD>&nbsp;<DT><A HREF="../org/eclipse/ecf/provider/generic/SOWrapper.html#SOWrapper(org.eclipse.ecf.provider.generic.SOContainer.LoadingSharedObject, org.eclipse.ecf.provider.generic.SOContainer)"><B>SOWrapper(SOContainer.LoadingSharedObject, SOContainer)</B></A> - 
Constructor for class org.eclipse.ecf.provider.generic.<A HREF="../org/eclipse/ecf/provider/generic/SOWrapper.html" title="class in org.eclipse.ecf.provider.generic">SOWrapper</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/generic/SOWrapper.html#SOWrapper(org.eclipse.ecf.provider.generic.SOConfig, org.eclipse.ecf.core.sharedobject.ISharedObject, org.eclipse.ecf.provider.generic.SOContainer)"><B>SOWrapper(SOConfig, ISharedObject, SOContainer)</B></A> - 
Constructor for class org.eclipse.ecf.provider.generic.<A HREF="../org/eclipse/ecf/provider/generic/SOWrapper.html" title="class in org.eclipse.ecf.provider.generic">SOWrapper</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/generic/SOWrapper.DisposeEvent.html" title="class in org.eclipse.ecf.provider.generic"><B>SOWrapper.DisposeEvent</B></A> - Class in <A HREF="../org/eclipse/ecf/provider/generic/package-summary.html">org.eclipse.ecf.provider.generic</A><DD>&nbsp;<DT><A HREF="../org/eclipse/ecf/provider/generic/SOWrapper.ProcEvent.html" title="class in org.eclipse.ecf.provider.generic"><B>SOWrapper.ProcEvent</B></A> - Class in <A HREF="../org/eclipse/ecf/provider/generic/package-summary.html">org.eclipse.ecf.provider.generic</A><DD>&nbsp;<DT><A HREF="../org/eclipse/ecf/provider/generic/SOWrapper.ProcEvent.html#SOWrapper.ProcEvent(org.eclipse.ecf.core.util.Event)"><B>SOWrapper.ProcEvent(Event)</B></A> - 
Constructor for class org.eclipse.ecf.provider.generic.<A HREF="../org/eclipse/ecf/provider/generic/SOWrapper.ProcEvent.html" title="class in org.eclipse.ecf.provider.generic">SOWrapper.ProcEvent</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/util/StringUtils.html#split(java.lang.String, char)"><B>split(String, char)</B></A> - 
Static method in class org.eclipse.ecf.core.util.<A HREF="../org/eclipse/ecf/core/util/StringUtils.html" title="class in org.eclipse.ecf.core.util">StringUtils</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/util/StringUtils.html#split(java.lang.String, java.lang.String)"><B>split(String, String)</B></A> - 
Static method in class org.eclipse.ecf.core.util.<A HREF="../org/eclipse/ecf/core/util/StringUtils.html" title="class in org.eclipse.ecf.core.util">StringUtils</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/util/StringUtils.html#split(java.lang.String, java.lang.String, int)"><B>split(String, String, int)</B></A> - 
Static method in class org.eclipse.ecf.core.util.<A HREF="../org/eclipse/ecf/core/util/StringUtils.html" title="class in org.eclipse.ecf.core.util">StringUtils</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/util/StringUtils.html#splitOnSpace(java.lang.String)"><B>splitOnSpace(String)</B></A> - 
Static method in class org.eclipse.ecf.core.util.<A HREF="../org/eclipse/ecf/core/util/StringUtils.html" title="class in org.eclipse.ecf.core.util">StringUtils</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/util/StringUtils.html#splitSubstring(java.lang.String, java.lang.String, int)"><B>splitSubstring(String, String, int)</B></A> - 
Static method in class org.eclipse.ecf.core.util.<A HREF="../org/eclipse/ecf/core/util/StringUtils.html" title="class in org.eclipse.ecf.core.util">StringUtils</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/identity/GUID.html#SR_DEFAULT_ALGO"><B>SR_DEFAULT_ALGO</B></A> - 
Static variable in class org.eclipse.ecf.core.identity.<A HREF="../org/eclipse/ecf/core/identity/GUID.html" title="class in org.eclipse.ecf.core.identity">GUID</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/identity/GUID.html#SR_DEFAULT_PROVIDER"><B>SR_DEFAULT_PROVIDER</B></A> - 
Static variable in class org.eclipse.ecf.core.identity.<A HREF="../org/eclipse/ecf/core/identity/GUID.html" title="class in org.eclipse.ecf.core.identity">GUID</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/discovery/ui/browser/Activator.html#start(org.osgi.framework.BundleContext)"><B>start(BundleContext)</B></A> - 
Method in class org.eclipse.ecf.discovery.ui.browser.<A HREF="../org/eclipse/ecf/discovery/ui/browser/Activator.html" title="class in org.eclipse.ecf.discovery.ui.browser">Activator</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/discovery/ui/model/ModelPlugin.html#start(org.osgi.framework.BundleContext)"><B>start(BundleContext)</B></A> - 
Method in class org.eclipse.ecf.discovery.ui.model.<A HREF="../org/eclipse/ecf/discovery/ui/model/ModelPlugin.html" title="class in org.eclipse.ecf.discovery.ui.model">ModelPlugin</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/discovery/ui/model/provider/DiscoveryEditPlugin.Implementation.html#start(org.osgi.framework.BundleContext)"><B>start(BundleContext)</B></A> - 
Method in class org.eclipse.ecf.discovery.ui.model.provider.<A HREF="../org/eclipse/ecf/discovery/ui/model/provider/DiscoveryEditPlugin.Implementation.html" title="class in org.eclipse.ecf.discovery.ui.model.provider">DiscoveryEditPlugin.Implementation</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/internal/docshare/Activator.html#start(org.osgi.framework.BundleContext)"><B>start(BundleContext)</B></A> - 
Method in class org.eclipse.ecf.internal.docshare.<A HREF="../org/eclipse/ecf/internal/docshare/Activator.html" title="class in org.eclipse.ecf.internal.docshare">Activator</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/osgi/services/discovery/local/Activator.html#start(org.osgi.framework.BundleContext)"><B>start(BundleContext)</B></A> - 
Method in class org.eclipse.ecf.osgi.services.discovery.local.<A HREF="../org/eclipse/ecf/osgi/services/discovery/local/Activator.html" title="class in org.eclipse.ecf.osgi.services.discovery.local">Activator</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/presence/bot/application/ChatRoomBotApplication.html#start(org.eclipse.equinox.app.IApplicationContext)"><B>start(IApplicationContext)</B></A> - 
Method in class org.eclipse.ecf.presence.bot.application.<A HREF="../org/eclipse/ecf/presence/bot/application/ChatRoomBotApplication.html" title="class in org.eclipse.ecf.presence.bot.application">ChatRoomBotApplication</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/presence/bot/application/IMBotApplication.html#start(org.eclipse.equinox.app.IApplicationContext)"><B>start(IApplicationContext)</B></A> - 
Method in class org.eclipse.ecf.presence.bot.application.<A HREF="../org/eclipse/ecf/presence/bot/application/IMBotApplication.html" title="class in org.eclipse.ecf.presence.bot.application">IMBotApplication</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/comm/IConnection.html#start()"><B>start()</B></A> - 
Method in interface org.eclipse.ecf.provider.comm.<A HREF="../org/eclipse/ecf/provider/comm/IConnection.html" title="interface in org.eclipse.ecf.provider.comm">IConnection</A>
<DD>Start connection
<DT><A HREF="../org/eclipse/ecf/provider/comm/tcp/Client.html#start()"><B>start()</B></A> - 
Method in class org.eclipse.ecf.provider.comm.tcp.<A HREF="../org/eclipse/ecf/provider/comm/tcp/Client.html" title="class in org.eclipse.ecf.provider.comm.tcp">Client</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/dnssd/Activator.html#start(org.osgi.framework.BundleContext)"><B>start(BundleContext)</B></A> - 
Method in class org.eclipse.ecf.provider.dnssd.<A HREF="../org/eclipse/ecf/provider/dnssd/Activator.html" title="class in org.eclipse.ecf.provider.dnssd">Activator</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/zookeeper/DiscoveryActivator.html#start(org.osgi.framework.BundleContext)"><B>start(BundleContext)</B></A> - 
Method in class org.eclipse.ecf.provider.zookeeper.<A HREF="../org/eclipse/ecf/provider/zookeeper/DiscoveryActivator.html" title="class in org.eclipse.ecf.provider.zookeeper">DiscoveryActivator</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/remoteservice/eventadmin/DistributedEventAdmin.html#start()"><B>start()</B></A> - 
Method in class org.eclipse.ecf.remoteservice.eventadmin.<A HREF="../org/eclipse/ecf/remoteservice/eventadmin/DistributedEventAdmin.html" title="class in org.eclipse.ecf.remoteservice.eventadmin">DistributedEventAdmin</A>
<DD>Start this distributed event admin instance.
<DT><A HREF="../org/eclipse/ecf/server/generic/AbstractGenericServer.html#start(java.lang.String, int)"><B>start(String, int)</B></A> - 
Method in class org.eclipse.ecf.server.generic.<A HREF="../org/eclipse/ecf/server/generic/AbstractGenericServer.html" title="class in org.eclipse.ecf.server.generic">AbstractGenericServer</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/server/generic/app/GenericClientApplication.html#start(org.eclipse.equinox.app.IApplicationContext)"><B>start(IApplicationContext)</B></A> - 
Method in class org.eclipse.ecf.server.generic.app.<A HREF="../org/eclipse/ecf/server/generic/app/GenericClientApplication.html" title="class in org.eclipse.ecf.server.generic.app">GenericClientApplication</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/server/generic/app/GenericServer.html#start(org.eclipse.equinox.app.IApplicationContext)"><B>start(IApplicationContext)</B></A> - 
Method in class org.eclipse.ecf.server.generic.app.<A HREF="../org/eclipse/ecf/server/generic/app/GenericServer.html" title="class in org.eclipse.ecf.server.generic.app">GenericServer</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/server/generic/app/GenericServerApplication.html#start(org.eclipse.equinox.app.IApplicationContext)"><B>start(IApplicationContext)</B></A> - 
Method in class org.eclipse.ecf.server.generic.app.<A HREF="../org/eclipse/ecf/server/generic/app/GenericServerApplication.html" title="class in org.eclipse.ecf.server.generic.app">GenericServerApplication</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/server/IServiceHost.html#start()"><B>start()</B></A> - 
Method in interface org.eclipse.ecf.server.<A HREF="../org/eclipse/ecf/server/IServiceHost.html" title="interface in org.eclipse.ecf.server">IServiceHost</A>
<DD>Start the service host.
<DT><A HREF="../org/eclipse/ecf/server/IStartableServer.html#start()"><B>start()</B></A> - 
Method in interface org.eclipse.ecf.server.<A HREF="../org/eclipse/ecf/server/IStartableServer.html" title="interface in org.eclipse.ecf.server">IStartableServer</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/server/generic/GenericServerContainerGroup.html#startListening()"><B>startListening()</B></A> - 
Method in class org.eclipse.ecf.server.generic.<A HREF="../org/eclipse/ecf/server/generic/GenericServerContainerGroup.html" title="class in org.eclipse.ecf.server.generic">GenericServerContainerGroup</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/server/generic/IGenericServerContainerGroup.html#startListening()"><B>startListening()</B></A> - 
Method in interface org.eclipse.ecf.server.generic.<A HREF="../org/eclipse/ecf/server/generic/IGenericServerContainerGroup.html" title="interface in org.eclipse.ecf.server.generic">IGenericServerContainerGroup</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/docshare/messages/StartMessage.html" title="class in org.eclipse.ecf.docshare.messages"><B>StartMessage</B></A> - Class in <A HREF="../org/eclipse/ecf/docshare/messages/package-summary.html">org.eclipse.ecf.docshare.messages</A><DD>&nbsp;<DT><A HREF="../org/eclipse/ecf/docshare/messages/StartMessage.html#StartMessage(org.eclipse.ecf.core.identity.ID, java.lang.String, org.eclipse.ecf.core.identity.ID, java.lang.String, java.lang.String)"><B>StartMessage(ID, String, ID, String, String)</B></A> - 
Constructor for class org.eclipse.ecf.docshare.messages.<A HREF="../org/eclipse/ecf/docshare/messages/StartMessage.html" title="class in org.eclipse.ecf.docshare.messages">StartMessage</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/docshare/DocShare.html#startShare(org.eclipse.ecf.core.identity.ID, java.lang.String, org.eclipse.ecf.core.identity.ID, java.lang.String, org.eclipse.ui.texteditor.ITextEditor)"><B>startShare(ID, String, ID, String, ITextEditor)</B></A> - 
Method in class org.eclipse.ecf.docshare.<A HREF="../org/eclipse/ecf/docshare/DocShare.html" title="class in org.eclipse.ecf.docshare">DocShare</A>
<DD>Start sharing an editor's contents between two participants.
<DT><A HREF="../org/eclipse/ecf/provider/remoteservice/generic/RemoteServiceRegistrationImpl.html#state"><B>state</B></A> - 
Variable in class org.eclipse.ecf.provider.remoteservice.generic.<A HREF="../org/eclipse/ecf/provider/remoteservice/generic/RemoteServiceRegistrationImpl.html" title="class in org.eclipse.ecf.provider.remoteservice.generic">RemoteServiceRegistrationImpl</A>
<DD>The registration state
<DT><A HREF="../org/eclipse/ecf/core/sharedobject/ReplicaSharedObjectDescription.html#staticID"><B>staticID</B></A> - 
Static variable in class org.eclipse.ecf.core.sharedobject.<A HREF="../org/eclipse/ecf/core/sharedobject/ReplicaSharedObjectDescription.html" title="class in org.eclipse.ecf.core.sharedobject">ReplicaSharedObjectDescription</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/presence/Presence.html#status"><B>status</B></A> - 
Variable in class org.eclipse.ecf.presence.<A HREF="../org/eclipse/ecf/presence/Presence.html" title="class in org.eclipse.ecf.presence">Presence</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/sharedobject/util/SimpleFIFOQueue.html#stop()"><B>stop()</B></A> - 
Method in class org.eclipse.ecf.core.sharedobject.util.<A HREF="../org/eclipse/ecf/core/sharedobject/util/SimpleFIFOQueue.html" title="class in org.eclipse.ecf.core.sharedobject.util">SimpleFIFOQueue</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/discovery/ui/browser/Activator.html#stop(org.osgi.framework.BundleContext)"><B>stop(BundleContext)</B></A> - 
Method in class org.eclipse.ecf.discovery.ui.browser.<A HREF="../org/eclipse/ecf/discovery/ui/browser/Activator.html" title="class in org.eclipse.ecf.discovery.ui.browser">Activator</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/discovery/ui/model/ModelPlugin.html#stop(org.osgi.framework.BundleContext)"><B>stop(BundleContext)</B></A> - 
Method in class org.eclipse.ecf.discovery.ui.model.<A HREF="../org/eclipse/ecf/discovery/ui/model/ModelPlugin.html" title="class in org.eclipse.ecf.discovery.ui.model">ModelPlugin</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/discovery/ui/model/provider/DiscoveryEditPlugin.Implementation.html#stop(org.osgi.framework.BundleContext)"><B>stop(BundleContext)</B></A> - 
Method in class org.eclipse.ecf.discovery.ui.model.provider.<A HREF="../org/eclipse/ecf/discovery/ui/model/provider/DiscoveryEditPlugin.Implementation.html" title="class in org.eclipse.ecf.discovery.ui.model.provider">DiscoveryEditPlugin.Implementation</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/internal/docshare/Activator.html#stop(org.osgi.framework.BundleContext)"><B>stop(BundleContext)</B></A> - 
Method in class org.eclipse.ecf.internal.docshare.<A HREF="../org/eclipse/ecf/internal/docshare/Activator.html" title="class in org.eclipse.ecf.internal.docshare">Activator</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/osgi/services/discovery/local/Activator.html#stop(org.osgi.framework.BundleContext)"><B>stop(BundleContext)</B></A> - 
Method in class org.eclipse.ecf.osgi.services.discovery.local.<A HREF="../org/eclipse/ecf/osgi/services/discovery/local/Activator.html" title="class in org.eclipse.ecf.osgi.services.discovery.local">Activator</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/presence/bot/application/ChatRoomBotApplication.html#stop()"><B>stop()</B></A> - 
Method in class org.eclipse.ecf.presence.bot.application.<A HREF="../org/eclipse/ecf/presence/bot/application/ChatRoomBotApplication.html" title="class in org.eclipse.ecf.presence.bot.application">ChatRoomBotApplication</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/presence/bot/application/IMBotApplication.html#stop()"><B>stop()</B></A> - 
Method in class org.eclipse.ecf.presence.bot.application.<A HREF="../org/eclipse/ecf/presence/bot/application/IMBotApplication.html" title="class in org.eclipse.ecf.presence.bot.application">IMBotApplication</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/comm/IConnection.html#stop()"><B>stop()</B></A> - 
Method in interface org.eclipse.ecf.provider.comm.<A HREF="../org/eclipse/ecf/provider/comm/IConnection.html" title="interface in org.eclipse.ecf.provider.comm">IConnection</A>
<DD>Stop connection
<DT><A HREF="../org/eclipse/ecf/provider/comm/tcp/Client.html#stop()"><B>stop()</B></A> - 
Method in class org.eclipse.ecf.provider.comm.tcp.<A HREF="../org/eclipse/ecf/provider/comm/tcp/Client.html" title="class in org.eclipse.ecf.provider.comm.tcp">Client</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/dnssd/Activator.html#stop(org.osgi.framework.BundleContext)"><B>stop(BundleContext)</B></A> - 
Method in class org.eclipse.ecf.provider.dnssd.<A HREF="../org/eclipse/ecf/provider/dnssd/Activator.html" title="class in org.eclipse.ecf.provider.dnssd">Activator</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/zookeeper/DiscoveryActivator.html#stop(org.osgi.framework.BundleContext)"><B>stop(BundleContext)</B></A> - 
Method in class org.eclipse.ecf.provider.zookeeper.<A HREF="../org/eclipse/ecf/provider/zookeeper/DiscoveryActivator.html" title="class in org.eclipse.ecf.provider.zookeeper">DiscoveryActivator</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/remoteservice/eventadmin/DistributedEventAdmin.html#stop()"><B>stop()</B></A> - 
Method in class org.eclipse.ecf.remoteservice.eventadmin.<A HREF="../org/eclipse/ecf/remoteservice/eventadmin/DistributedEventAdmin.html" title="class in org.eclipse.ecf.remoteservice.eventadmin">DistributedEventAdmin</A>
<DD>Stop this distributed event admin instance.
<DT><A HREF="../org/eclipse/ecf/server/generic/AbstractGenericServer.html#stop()"><B>stop()</B></A> - 
Method in class org.eclipse.ecf.server.generic.<A HREF="../org/eclipse/ecf/server/generic/AbstractGenericServer.html" title="class in org.eclipse.ecf.server.generic">AbstractGenericServer</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/server/generic/app/GenericClientApplication.html#stop()"><B>stop()</B></A> - 
Method in class org.eclipse.ecf.server.generic.app.<A HREF="../org/eclipse/ecf/server/generic/app/GenericClientApplication.html" title="class in org.eclipse.ecf.server.generic.app">GenericClientApplication</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/server/generic/app/GenericServer.html#stop()"><B>stop()</B></A> - 
Method in class org.eclipse.ecf.server.generic.app.<A HREF="../org/eclipse/ecf/server/generic/app/GenericServer.html" title="class in org.eclipse.ecf.server.generic.app">GenericServer</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/server/generic/app/GenericServerApplication.html#stop()"><B>stop()</B></A> - 
Method in class org.eclipse.ecf.server.generic.app.<A HREF="../org/eclipse/ecf/server/generic/app/GenericServerApplication.html" title="class in org.eclipse.ecf.server.generic.app">GenericServerApplication</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/server/IServiceClient.html#stop()"><B>stop()</B></A> - 
Method in interface org.eclipse.ecf.server.<A HREF="../org/eclipse/ecf/server/IServiceClient.html" title="interface in org.eclipse.ecf.server">IServiceClient</A>
<DD>Stop this service client.
<DT><A HREF="../org/eclipse/ecf/server/IServiceHost.html#stop()"><B>stop()</B></A> - 
Method in interface org.eclipse.ecf.server.<A HREF="../org/eclipse/ecf/server/IServiceHost.html" title="interface in org.eclipse.ecf.server">IServiceHost</A>
<DD>Stop this service host.
<DT><A HREF="../org/eclipse/ecf/server/IStartableServer.html#stop()"><B>stop()</B></A> - 
Method in interface org.eclipse.ecf.server.<A HREF="../org/eclipse/ecf/server/IStartableServer.html" title="interface in org.eclipse.ecf.server">IStartableServer</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/server/generic/GenericServerContainerGroup.html#stopListening()"><B>stopListening()</B></A> - 
Method in class org.eclipse.ecf.server.generic.<A HREF="../org/eclipse/ecf/server/generic/GenericServerContainerGroup.html" title="class in org.eclipse.ecf.server.generic">GenericServerContainerGroup</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/server/generic/IGenericServerContainerGroup.html#stopListening()"><B>stopListening()</B></A> - 
Method in interface org.eclipse.ecf.server.generic.<A HREF="../org/eclipse/ecf/server/generic/IGenericServerContainerGroup.html" title="interface in org.eclipse.ecf.server.generic">IGenericServerContainerGroup</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/docshare/messages/StopMessage.html" title="class in org.eclipse.ecf.docshare.messages"><B>StopMessage</B></A> - Class in <A HREF="../org/eclipse/ecf/docshare/messages/package-summary.html">org.eclipse.ecf.docshare.messages</A><DD>&nbsp;<DT><A HREF="../org/eclipse/ecf/docshare/messages/StopMessage.html#StopMessage()"><B>StopMessage()</B></A> - 
Constructor for class org.eclipse.ecf.docshare.messages.<A HREF="../org/eclipse/ecf/docshare/messages/StopMessage.html" title="class in org.eclipse.ecf.docshare.messages">StopMessage</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/docshare/DocShare.html#stopShare()"><B>stopShare()</B></A> - 
Method in class org.eclipse.ecf.docshare.<A HREF="../org/eclipse/ecf/docshare/DocShare.html" title="class in org.eclipse.ecf.docshare">DocShare</A>
<DD>Stop editor sharing.
<DT><A HREF="../org/eclipse/ecf/storage/IContainerStore.html#store(org.eclipse.ecf.storage.IStorableContainerAdapter)"><B>store(IStorableContainerAdapter)</B></A> - 
Method in interface org.eclipse.ecf.storage.<A HREF="../org/eclipse/ecf/storage/IContainerStore.html" title="interface in org.eclipse.ecf.storage">IContainerStore</A>
<DD>Store a <A HREF="../org/eclipse/ecf/storage/IStorableContainerAdapter.html" title="interface in org.eclipse.ecf.storage"><CODE>IStorableContainerAdapter</CODE></A> in this container store.
<DT><A HREF="../org/eclipse/ecf/storage/IIDStore.html#store(org.eclipse.ecf.core.identity.ID)"><B>store(ID)</B></A> - 
Method in interface org.eclipse.ecf.storage.<A HREF="../org/eclipse/ecf/storage/IIDStore.html" title="interface in org.eclipse.ecf.storage">IIDStore</A>
<DD>Get <A HREF="../org/eclipse/ecf/storage/IIDEntry.html" title="interface in org.eclipse.ecf.storage"><CODE>IIDEntry</CODE></A> in this IDStore for a given ID.
<DT><A HREF="../org/eclipse/ecf/storage/IStorableContainerAdapter.html#store(org.eclipse.equinox.security.storage.ISecurePreferences)"><B>store(ISecurePreferences)</B></A> - 
Method in interface org.eclipse.ecf.storage.<A HREF="../org/eclipse/ecf/storage/IStorableContainerAdapter.html" title="interface in org.eclipse.ecf.storage">IStorableContainerAdapter</A>
<DD>Store the contents of the implementer in the given storage instance.
<DT><A HREF="../org/eclipse/ecf/storage/IStorableContainerAdapter.html#storeEncrypted()"><B>storeEncrypted()</B></A> - 
Method in interface org.eclipse.ecf.storage.<A HREF="../org/eclipse/ecf/storage/IStorableContainerAdapter.html" title="interface in org.eclipse.ecf.storage">IStorableContainerAdapter</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/remoteservice/rest/client/AbstractEntityRequestType.html#STRING_REQUEST_ENTITY"><B>STRING_REQUEST_ENTITY</B></A> - 
Static variable in class org.eclipse.ecf.remoteservice.rest.client.<A HREF="../org/eclipse/ecf/remoteservice/rest/client/AbstractEntityRequestType.html" title="class in org.eclipse.ecf.remoteservice.rest.client">AbstractEntityRequestType</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/identity/StringID.html" title="class in org.eclipse.ecf.core.identity"><B>StringID</B></A> - Class in <A HREF="../org/eclipse/ecf/core/identity/package-summary.html">org.eclipse.ecf.core.identity</A><DD>A string-based identity<DT><A HREF="../org/eclipse/ecf/core/identity/StringID.html#StringID(org.eclipse.ecf.core.identity.Namespace, java.lang.String)"><B>StringID(Namespace, String)</B></A> - 
Constructor for class org.eclipse.ecf.core.identity.<A HREF="../org/eclipse/ecf/core/identity/StringID.html" title="class in org.eclipse.ecf.core.identity">StringID</A>
<DD>Protected constructor for factory-based construction
<DT><A HREF="../org/eclipse/ecf/core/identity/StringID.StringIDNamespace.html" title="class in org.eclipse.ecf.core.identity"><B>StringID.StringIDNamespace</B></A> - Class in <A HREF="../org/eclipse/ecf/core/identity/package-summary.html">org.eclipse.ecf.core.identity</A><DD>&nbsp;<DT><A HREF="../org/eclipse/ecf/core/identity/StringID.StringIDNamespace.html#StringID.StringIDNamespace(java.lang.String, java.lang.String)"><B>StringID.StringIDNamespace(String, String)</B></A> - 
Constructor for class org.eclipse.ecf.core.identity.<A HREF="../org/eclipse/ecf/core/identity/StringID.StringIDNamespace.html" title="class in org.eclipse.ecf.core.identity">StringID.StringIDNamespace</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/identity/StringID.StringIDNamespace.html#StringID.StringIDNamespace()"><B>StringID.StringIDNamespace()</B></A> - 
Constructor for class org.eclipse.ecf.core.identity.<A HREF="../org/eclipse/ecf/core/identity/StringID.StringIDNamespace.html" title="class in org.eclipse.ecf.core.identity">StringID.StringIDNamespace</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/remoteservice/client/StringParameterSerializer.html" title="class in org.eclipse.ecf.remoteservice.client"><B>StringParameterSerializer</B></A> - Class in <A HREF="../org/eclipse/ecf/remoteservice/client/package-summary.html">org.eclipse.ecf.remoteservice.client</A><DD>Parameter serializer for String parameters.<DT><A HREF="../org/eclipse/ecf/remoteservice/client/StringParameterSerializer.html#StringParameterSerializer()"><B>StringParameterSerializer()</B></A> - 
Constructor for class org.eclipse.ecf.remoteservice.client.<A HREF="../org/eclipse/ecf/remoteservice/client/StringParameterSerializer.html" title="class in org.eclipse.ecf.remoteservice.client">StringParameterSerializer</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/util/StringUtils.html" title="class in org.eclipse.ecf.core.util"><B>StringUtils</B></A> - Class in <A HREF="../org/eclipse/ecf/core/util/package-summary.html">org.eclipse.ecf.core.util</A><DD>
 The StringUtils class provides static methods that helps make string
 manipulation easy.<DT><A HREF="../org/eclipse/ecf/core/util/StringUtils.html#StringUtils()"><B>StringUtils()</B></A> - 
Constructor for class org.eclipse.ecf.core.util.<A HREF="../org/eclipse/ecf/core/util/StringUtils.html" title="class in org.eclipse.ecf.core.util">StringUtils</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/presence/im/ChatMessage.html#subject"><B>subject</B></A> - 
Variable in class org.eclipse.ecf.presence.im.<A HREF="../org/eclipse/ecf/presence/im/ChatMessage.html" title="class in org.eclipse.ecf.presence.im">ChatMessage</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/presence/IPresence.Type.html#SUBSCRIBE"><B>SUBSCRIBE</B></A> - 
Static variable in class org.eclipse.ecf.presence.<A HREF="../org/eclipse/ecf/presence/IPresence.Type.html" title="class in org.eclipse.ecf.presence">IPresence.Type</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/presence/IPresence.Type.html#SUBSCRIBED"><B>SUBSCRIBED</B></A> - 
Static variable in class org.eclipse.ecf.presence.<A HREF="../org/eclipse/ecf/presence/IPresence.Type.html" title="class in org.eclipse.ecf.presence">IPresence.Type</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/ui/actions/SynchContainerConnectAction.html#successBlock"><B>successBlock</B></A> - 
Variable in class org.eclipse.ecf.ui.actions.<A HREF="../org/eclipse/ecf/ui/actions/SynchContainerConnectAction.html" title="class in org.eclipse.ecf.ui.actions">SynchContainerConnectAction</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/discovery/ui/model/provider/ModelItemProviderAdapterFactory.html#supportedTypes"><B>supportedTypes</B></A> - 
Variable in class org.eclipse.ecf.discovery.ui.model.provider.<A HREF="../org/eclipse/ecf/discovery/ui/model/provider/ModelItemProviderAdapterFactory.html" title="class in org.eclipse.ecf.discovery.ui.model.provider">ModelItemProviderAdapterFactory</A>
<DD>This keeps track of all the supported types checked by <A HREF="../org/eclipse/ecf/discovery/ui/model/provider/ModelItemProviderAdapterFactory.html#isFactoryForType(java.lang.Object)"><CODE>isFactoryForType</CODE></A>.
<DT><A HREF="../org/eclipse/ecf/provider/generic/SOWrapper.html#svc(org.eclipse.ecf.core.util.Event)"><B>svc(Event)</B></A> - 
Method in class org.eclipse.ecf.provider.generic.<A HREF="../org/eclipse/ecf/provider/generic/SOWrapper.html" title="class in org.eclipse.ecf.provider.generic">SOWrapper</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/filetransfer/IRemoteFileAttributes.html#SYMLINK_ATTRIBUTE"><B>SYMLINK_ATTRIBUTE</B></A> - 
Static variable in interface org.eclipse.ecf.filetransfer.<A HREF="../org/eclipse/ecf/filetransfer/IRemoteFileAttributes.html" title="interface in org.eclipse.ecf.filetransfer">IRemoteFileAttributes</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/filetransfer/IRemoteFileAttributes.html#SYMLINK_TARGET_ATTRIBUTE"><B>SYMLINK_TARGET_ATTRIBUTE</B></A> - 
Static variable in interface org.eclipse.ecf.filetransfer.<A HREF="../org/eclipse/ecf/filetransfer/IRemoteFileAttributes.html" title="interface in org.eclipse.ecf.filetransfer">IRemoteFileAttributes</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/remoteservice/RemoteServiceHelper.html#syncExec(org.eclipse.ecf.remoteservice.IRemoteService, java.lang.String, java.lang.Object[], long)"><B>syncExec(IRemoteService, String, Object[], long)</B></A> - 
Static method in class org.eclipse.ecf.remoteservice.<A HREF="../org/eclipse/ecf/remoteservice/RemoteServiceHelper.html" title="class in org.eclipse.ecf.remoteservice">RemoteServiceHelper</A>
<DD>Invoke given method synchronously, blocking the calling thread until a result is received or
 timeout.
<DT><A HREF="../org/eclipse/ecf/remoteservice/RemoteServiceHelper.html#syncExec(org.eclipse.ecf.remoteservice.IRemoteService, java.lang.String, java.lang.Object[])"><B>syncExec(IRemoteService, String, Object[])</B></A> - 
Static method in class org.eclipse.ecf.remoteservice.<A HREF="../org/eclipse/ecf/remoteservice/RemoteServiceHelper.html" title="class in org.eclipse.ecf.remoteservice">RemoteServiceHelper</A>
<DD>Invoke given method synchronously, blocking the calling thread until a result is received or
 timeout.
<DT><A HREF="../org/eclipse/ecf/ui/actions/SynchContainerConnectAction.html" title="class in org.eclipse.ecf.ui.actions"><B>SynchContainerConnectAction</B></A> - Class in <A HREF="../org/eclipse/ecf/ui/actions/package-summary.html">org.eclipse.ecf.ui.actions</A><DD>Action class to synchronously invoke <A HREF="../org/eclipse/ecf/core/IContainer.html#connect(org.eclipse.ecf.core.identity.ID, org.eclipse.ecf.core.security.IConnectContext)"><CODE>IContainer.connect(ID, IConnectContext)</CODE></A>.<DT><A HREF="../org/eclipse/ecf/ui/actions/SynchContainerConnectAction.html#SynchContainerConnectAction(org.eclipse.ecf.core.IContainer, org.eclipse.ecf.core.identity.ID, org.eclipse.ecf.core.security.IConnectContext, org.eclipse.ecf.core.util.IExceptionHandler, java.lang.Runnable)"><B>SynchContainerConnectAction(IContainer, ID, IConnectContext, IExceptionHandler, Runnable)</B></A> - 
Constructor for class org.eclipse.ecf.ui.actions.<A HREF="../org/eclipse/ecf/ui/actions/SynchContainerConnectAction.html" title="class in org.eclipse.ecf.ui.actions">SynchContainerConnectAction</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/ui/actions/SynchContainerConnectAction.html#SynchContainerConnectAction(org.eclipse.ecf.core.IContainer, org.eclipse.ecf.core.identity.ID, org.eclipse.ecf.core.security.IConnectContext, org.eclipse.ecf.core.util.IExceptionHandler)"><B>SynchContainerConnectAction(IContainer, ID, IConnectContext, IExceptionHandler)</B></A> - 
Constructor for class org.eclipse.ecf.ui.actions.<A HREF="../org/eclipse/ecf/ui/actions/SynchContainerConnectAction.html" title="class in org.eclipse.ecf.ui.actions">SynchContainerConnectAction</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/ui/actions/SynchContainerConnectAction.html#SynchContainerConnectAction(org.eclipse.ecf.core.IContainer, org.eclipse.ecf.core.identity.ID, org.eclipse.ecf.core.security.IConnectContext)"><B>SynchContainerConnectAction(IContainer, ID, IConnectContext)</B></A> - 
Constructor for class org.eclipse.ecf.ui.actions.<A HREF="../org/eclipse/ecf/ui/actions/SynchContainerConnectAction.html" title="class in org.eclipse.ecf.ui.actions">SynchContainerConnectAction</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/comm/SynchEvent.html" title="class in org.eclipse.ecf.provider.comm"><B>SynchEvent</B></A> - Class in <A HREF="../org/eclipse/ecf/provider/comm/package-summary.html">org.eclipse.ecf.provider.comm</A><DD>Synchronous connection event.<DT><A HREF="../org/eclipse/ecf/provider/comm/SynchEvent.html#SynchEvent(org.eclipse.ecf.provider.comm.ISynchConnection, java.lang.Object)"><B>SynchEvent(ISynchConnection, Object)</B></A> - 
Constructor for class org.eclipse.ecf.provider.comm.<A HREF="../org/eclipse/ecf/provider/comm/SynchEvent.html" title="class in org.eclipse.ecf.provider.comm">SynchEvent</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/comm/tcp/SynchMessage.html" title="class in org.eclipse.ecf.provider.comm.tcp"><B>SynchMessage</B></A> - Class in <A HREF="../org/eclipse/ecf/provider/comm/tcp/package-summary.html">org.eclipse.ecf.provider.comm.tcp</A><DD>&nbsp;<DT><A HREF="../org/eclipse/ecf/provider/comm/tcp/SynchMessage.html#SynchMessage(java.io.Serializable)"><B>SynchMessage(Serializable)</B></A> - 
Constructor for class org.eclipse.ecf.provider.comm.tcp.<A HREF="../org/eclipse/ecf/provider/comm/tcp/SynchMessage.html" title="class in org.eclipse.ecf.provider.comm.tcp">SynchMessage</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/comm/tcp/SynchMessage.html#SynchMessage()"><B>SynchMessage()</B></A> - 
Constructor for class org.eclipse.ecf.provider.comm.tcp.<A HREF="../org/eclipse/ecf/provider/comm/tcp/SynchMessage.html" title="class in org.eclipse.ecf.provider.comm.tcp">SynchMessage</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/remoteservices/ui/MethodInvocationDialog.html#SYNCHRONOUS"><B>SYNCHRONOUS</B></A> - 
Static variable in class org.eclipse.ecf.remoteservices.ui.<A HREF="../org/eclipse/ecf/remoteservices/ui/MethodInvocationDialog.html" title="class in org.eclipse.ecf.remoteservices.ui">MethodInvocationDialog</A>
<DD>An integer constant that corresponds to the "Synchronous" selection.
<DT><A HREF="../org/eclipse/ecf/sync/doc/IDocumentSynchronizationStrategyFactory.html#SYNCHSTRATEGY_TYPE"><B>SYNCHSTRATEGY_TYPE</B></A> - 
Static variable in interface org.eclipse.ecf.sync.doc.<A HREF="../org/eclipse/ecf/sync/doc/IDocumentSynchronizationStrategyFactory.html" title="interface in org.eclipse.ecf.sync.doc">IDocumentSynchronizationStrategyFactory</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/provider/zookeeper/core/DefaultDiscoveryConfig.html#SYNCLIMIT_DEFAULT"><B>SYNCLIMIT_DEFAULT</B></A> - 
Static variable in class org.eclipse.ecf.provider.zookeeper.core.<A HREF="../org/eclipse/ecf/provider/zookeeper/core/DefaultDiscoveryConfig.html" title="class in org.eclipse.ecf.provider.zookeeper.core">DefaultDiscoveryConfig</A>
<DD>The sync limit default.
<DT><A HREF="../org/eclipse/ecf/sync/IServiceConstants.html#SYNCSTRATEGY_PROVIDER_PROPETY"><B>SYNCSTRATEGY_PROVIDER_PROPETY</B></A> - 
Static variable in interface org.eclipse.ecf.sync.<A HREF="../org/eclipse/ecf/sync/IServiceConstants.html" title="interface in org.eclipse.ecf.sync">IServiceConstants</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/sync/IServiceConstants.html#SYNCSTRATEGY_TYPE_PROPERTY"><B>SYNCSTRATEGY_TYPE_PROPERTY</B></A> - 
Static variable in interface org.eclipse.ecf.sync.<A HREF="../org/eclipse/ecf/sync/IServiceConstants.html" title="interface in org.eclipse.ecf.sync">IServiceConstants</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/remoteservice/rest/synd/SyndFeedResponseDeserializer.html" title="class in org.eclipse.ecf.remoteservice.rest.synd"><B>SyndFeedResponseDeserializer</B></A> - Class in <A HREF="../org/eclipse/ecf/remoteservice/rest/synd/package-summary.html">org.eclipse.ecf.remoteservice.rest.synd</A><DD>&nbsp;<DT><A HREF="../org/eclipse/ecf/remoteservice/rest/synd/SyndFeedResponseDeserializer.html#SyndFeedResponseDeserializer()"><B>SyndFeedResponseDeserializer()</B></A> - 
Constructor for class org.eclipse.ecf.remoteservice.rest.synd.<A HREF="../org/eclipse/ecf/remoteservice/rest/synd/SyndFeedResponseDeserializer.html" title="class in org.eclipse.ecf.remoteservice.rest.synd">SyndFeedResponseDeserializer</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/presence/im/IChatMessage.Type.html#SYSTEM"><B>SYSTEM</B></A> - 
Static variable in class org.eclipse.ecf.presence.im.<A HREF="../org/eclipse/ecf/presence/im/IChatMessage.Type.html" title="class in org.eclipse.ecf.presence.im">IChatMessage.Type</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/presence/ui/chatroom/MessageRenderer.html#SYSTEM_COLOR"><B>SYSTEM_COLOR</B></A> - 
Static variable in class org.eclipse.ecf.presence.ui.chatroom.<A HREF="../org/eclipse/ecf/presence/ui/chatroom/MessageRenderer.html" title="class in org.eclipse.ecf.presence.ui.chatroom">MessageRenderer</A>
<DD>System messages, eg.
<DT><A HREF="../org/eclipse/ecf/presence/ui/chatroom/MessageRenderer.html#SYSTEM_FONT"><B>SYSTEM_FONT</B></A> - 
Static variable in class org.eclipse.ecf.presence.ui.chatroom.<A HREF="../org/eclipse/ecf/presence/ui/chatroom/MessageRenderer.html" title="class in org.eclipse.ecf.presence.ui.chatroom">MessageRenderer</A>
<DD>&nbsp;
<DT><A HREF="../org/eclipse/ecf/core/util/SystemLogService.html" title="class in org.eclipse.ecf.core.util"><B>SystemLogService</B></A> - Class in <A HREF="../org/eclipse/ecf/core/util/package-summary.html">org.eclipse.ecf.core.util</A><DD>&nbsp;<DT><A HREF="../org/eclipse/ecf/core/util/SystemLogService.html#SystemLogService(java.lang.String)"><B>SystemLogService(String)</B></A> - 
Constructor for class org.eclipse.ecf.core.util.<A HREF="../org/eclipse/ecf/core/util/SystemLogService.html" title="class in org.eclipse.ecf.core.util">SystemLogService</A>
<DD>&nbsp;
</DL>
<HR>


<!-- ======= START OF BOTTOM NAVBAR ====== -->
<A NAME="navbar_bottom"><!-- --></A>
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_bottom_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
  <TR ALIGN="center" VALIGN="top">
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <FONT CLASS="NavBarFont1">Package</FONT>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <FONT CLASS="NavBarFont1">Use</FONT>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Index</B></FONT>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
  </TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>

<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="index-18.html"><B>PREV LETTER</B></A>&nbsp;
&nbsp;<A HREF="index-20.html"><B>NEXT LETTER</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
  <A HREF="../index.html?index-filesindex-19.html" target="_top"><B>FRAMES</B></A>  &nbsp;
&nbsp;<A HREF="index-19.html" target="_top"><B>NO FRAMES</B></A>  &nbsp;
&nbsp;<SCRIPT type="text/javascript">
  <!--
  if(window==top) {
    document.writeln('<A HREF="../allclasses-noframe.html"><B>All Classes</B></A>');
  }
  //-->
</SCRIPT>
<NOSCRIPT>
  <A HREF="../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>


</FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_bottom"></A>
<!-- ======== END OF BOTTOM NAVBAR ======= -->

<A HREF="index-1.html">A</A> <A HREF="index-2.html">B</A> <A HREF="index-3.html">C</A> <A HREF="index-4.html">D</A> <A HREF="index-5.html">E</A> <A HREF="index-6.html">F</A> <A HREF="index-7.html">G</A> <A HREF="index-8.html">H</A> <A HREF="index-9.html">I</A> <A HREF="index-10.html">J</A> <A HREF="index-11.html">K</A> <A HREF="index-12.html">L</A> <A HREF="index-13.html">M</A> <A HREF="index-14.html">N</A> <A HREF="index-15.html">O</A> <A HREF="index-16.html">P</A> <A HREF="index-17.html">Q</A> <A HREF="index-18.html">R</A> <A HREF="index-19.html">S</A> <A HREF="index-20.html">T</A> <A HREF="index-21.html">U</A> <A HREF="index-22.html">V</A> <A HREF="index-23.html">W</A> <A HREF="index-24.html">X</A> <A HREF="index-25.html">Z</A> <A HREF="index-26.html">_</A> <HR>

</BODY>
</HTML>
