summaryrefslogtreecommitdiff
path: root/cs/demo
diff options
context:
space:
mode:
authorBenoit Foucher <benoit@zeroc.com>2012-04-25 11:19:13 +0200
committerBenoit Foucher <benoit@zeroc.com>2012-04-25 11:19:13 +0200
commit7e874613ff22bedf988273b51a15ab937f01169f (patch)
tree115a92a902f80fcc6252c5fac6a957ecc548b82c /cs/demo
parentFixed copyrights (diff)
downloadice-7e874613ff22bedf988273b51a15ab937f01169f.tar.bz2
ice-7e874613ff22bedf988273b51a15ab937f01169f.tar.xz
ice-7e874613ff22bedf988273b51a15ab937f01169f.zip
Merged Silverlight support
Diffstat (limited to 'cs/demo')
-rw-r--r--cs/demo/Glacier2/sl/README.txt26
-rw-r--r--cs/demo/Glacier2/sl/chat.Web/Properties/AssemblyInfo.cs35
-rw-r--r--cs/demo/Glacier2/sl/chat.Web/Silverlight.js2
-rw-r--r--cs/demo/Glacier2/sl/chat.Web/Web.Debug.config30
-rw-r--r--cs/demo/Glacier2/sl/chat.Web/Web.Release.config31
-rw-r--r--cs/demo/Glacier2/sl/chat.Web/Web.config13
-rw-r--r--cs/demo/Glacier2/sl/chat.Web/chat.Web.csproj99
-rw-r--r--cs/demo/Glacier2/sl/chat.Web/chatTestPage.aspx74
-rw-r--r--cs/demo/Glacier2/sl/chat.Web/chatTestPage.html73
-rw-r--r--cs/demo/Glacier2/sl/chat/.gitignore3
-rw-r--r--cs/demo/Glacier2/sl/chat/App.xaml8
-rw-r--r--cs/demo/Glacier2/sl/chat/App.xaml.cs79
-rw-r--r--cs/demo/Glacier2/sl/chat/Chat.ice28
-rw-r--r--cs/demo/Glacier2/sl/chat/ChatPage.xaml44
-rw-r--r--cs/demo/Glacier2/sl/chat/ChatPage.xaml.cs68
-rw-r--r--cs/demo/Glacier2/sl/chat/ConnectingPage.xaml13
-rw-r--r--cs/demo/Glacier2/sl/chat/ConnectingPage.xaml.cs32
-rw-r--r--cs/demo/Glacier2/sl/chat/Coordinator.cs203
-rw-r--r--cs/demo/Glacier2/sl/chat/DisconnectingPage.xaml13
-rw-r--r--cs/demo/Glacier2/sl/chat/DisconnectingPage.xaml.cs32
-rw-r--r--cs/demo/Glacier2/sl/chat/LoginPage.xaml25
-rw-r--r--cs/demo/Glacier2/sl/chat/LoginPage.xaml.cs73
-rw-r--r--cs/demo/Glacier2/sl/chat/MainPage.xaml14
-rw-r--r--cs/demo/Glacier2/sl/chat/MainPage.xaml.cs100
-rw-r--r--cs/demo/Glacier2/sl/chat/Properties/AppManifest.xml6
-rw-r--r--cs/demo/Glacier2/sl/chat/Properties/AssemblyInfo.cs35
-rw-r--r--cs/demo/Glacier2/sl/chat/bin/AppManifest.xaml8
-rw-r--r--cs/demo/Glacier2/sl/chat/bin/Glacier2.xml2110
-rw-r--r--cs/demo/Glacier2/sl/chat/bin/Ice.xml5815
-rw-r--r--cs/demo/Glacier2/sl/chat/bin/System.Windows.Controls.Navigation.xml420
-rw-r--r--cs/demo/Glacier2/sl/chat/bin/chat.xapbin0 -> 259022 bytes
-rw-r--r--cs/demo/Glacier2/sl/chat/bin/chatTestPage.html73
-rw-r--r--cs/demo/Glacier2/sl/chat/chat.csproj145
-rw-r--r--cs/demo/Ice/compact/Program.cs19
-rw-r--r--cs/demo/Ice/compact/bidir/Callback.ice30
-rw-r--r--cs/demo/Ice/compact/bidir/CallbackSenderI.cs110
-rw-r--r--cs/demo/Ice/compact/bidir/MainForm.Designer.cs107
-rw-r--r--cs/demo/Ice/compact/bidir/MainForm.cs103
-rw-r--r--cs/demo/Ice/compact/bidir/MainForm.resx (renamed from cs/demo/Ice/compact/MainForm.resx)0
-rw-r--r--cs/demo/Ice/compact/bidir/Program.cs28
-rw-r--r--cs/demo/Ice/compact/bidir/README.txt58
-rw-r--r--cs/demo/Ice/compact/bidir/server.csproj99
-rw-r--r--cs/demo/Ice/compact/hello/Hello.ice (renamed from cs/demo/Ice/compact/Hello.ice)0
-rw-r--r--cs/demo/Ice/compact/hello/MainForm.Designer.cs (renamed from cs/demo/Ice/compact/MainForm.Designer.cs)0
-rw-r--r--cs/demo/Ice/compact/hello/MainForm.cs (renamed from cs/demo/Ice/compact/MainForm.cs)0
-rw-r--r--cs/demo/Ice/compact/hello/MainForm.resx129
-rw-r--r--cs/demo/Ice/compact/hello/Program.cs28
-rw-r--r--cs/demo/Ice/compact/hello/README.txt (renamed from cs/demo/Ice/compact/README)2
-rw-r--r--cs/demo/Ice/compact/hello/client.csproj (renamed from cs/demo/Ice/compact/Ice.compact.client.csproj)10
-rw-r--r--cs/demo/Ice/sl/bidir/README.txt40
-rw-r--r--cs/demo/Ice/sl/bidir/bidir.Web/Properties/AssemblyInfo.cs35
-rw-r--r--cs/demo/Ice/sl/bidir/bidir.Web/Silverlight.js2
-rw-r--r--cs/demo/Ice/sl/bidir/bidir.Web/Web.Debug.config30
-rw-r--r--cs/demo/Ice/sl/bidir/bidir.Web/Web.Release.config31
-rw-r--r--cs/demo/Ice/sl/bidir/bidir.Web/Web.config13
-rw-r--r--cs/demo/Ice/sl/bidir/bidir.Web/bidir.Web.csproj99
-rw-r--r--cs/demo/Ice/sl/bidir/bidir.Web/bidirTestPage.aspx74
-rw-r--r--cs/demo/Ice/sl/bidir/bidir.Web/bidirTestPage.html73
-rw-r--r--cs/demo/Ice/sl/bidir/bidir/.gitignore3
-rw-r--r--cs/demo/Ice/sl/bidir/bidir/App.xaml8
-rw-r--r--cs/demo/Ice/sl/bidir/bidir/App.xaml.cs77
-rw-r--r--cs/demo/Ice/sl/bidir/bidir/Callback.ice27
-rw-r--r--cs/demo/Ice/sl/bidir/bidir/CallbackReceiverI.cs38
-rw-r--r--cs/demo/Ice/sl/bidir/bidir/MainPage.xaml30
-rw-r--r--cs/demo/Ice/sl/bidir/bidir/MainPage.xaml.cs138
-rw-r--r--cs/demo/Ice/sl/bidir/bidir/Properties/AppManifest.xml6
-rw-r--r--cs/demo/Ice/sl/bidir/bidir/Properties/AssemblyInfo.cs35
-rw-r--r--cs/demo/Ice/sl/bidir/bidir/Properties/OutOfBrowserSettings.xml10
-rw-r--r--cs/demo/Ice/sl/bidir/bidir/bidir.csproj118
-rw-r--r--cs/demo/Ice/sl/hello/README.txt23
-rw-r--r--cs/demo/Ice/sl/hello/hello.Web/Properties/AssemblyInfo.cs35
-rw-r--r--cs/demo/Ice/sl/hello/hello.Web/Silverlight.js2
-rw-r--r--cs/demo/Ice/sl/hello/hello.Web/Web.Debug.config30
-rw-r--r--cs/demo/Ice/sl/hello/hello.Web/Web.Release.config31
-rw-r--r--cs/demo/Ice/sl/hello/hello.Web/Web.config13
-rw-r--r--cs/demo/Ice/sl/hello/hello.Web/hello.Web.csproj101
-rw-r--r--cs/demo/Ice/sl/hello/hello.Web/helloTestPage.aspx74
-rw-r--r--cs/demo/Ice/sl/hello/hello.Web/helloTestPage.html73
-rw-r--r--cs/demo/Ice/sl/hello/hello.sln26
-rw-r--r--cs/demo/Ice/sl/hello/hello/.gitignore3
-rw-r--r--cs/demo/Ice/sl/hello/hello/App.xaml8
-rw-r--r--cs/demo/Ice/sl/hello/hello/App.xaml.cs76
-rw-r--r--cs/demo/Ice/sl/hello/hello/Hello.ice21
-rw-r--r--cs/demo/Ice/sl/hello/hello/MainPage.xaml56
-rw-r--r--cs/demo/Ice/sl/hello/hello/MainPage.xaml.cs180
-rw-r--r--cs/demo/Ice/sl/hello/hello/Properties/AppManifest.xml6
-rw-r--r--cs/demo/Ice/sl/hello/hello/Properties/AssemblyInfo.cs35
-rw-r--r--cs/demo/Ice/sl/hello/hello/hello.csproj114
-rwxr-xr-xcs/demo/democf.sln18
-rw-r--r--cs/demo/demosl.sln73
90 files changed, 12313 insertions, 25 deletions
diff --git a/cs/demo/Glacier2/sl/README.txt b/cs/demo/Glacier2/sl/README.txt
new file mode 100644
index 00000000000..eb9f1eafb62
--- /dev/null
+++ b/cs/demo/Glacier2/sl/README.txt
@@ -0,0 +1,26 @@
+This demo demonstrates the use of a Glacier2 session helpers and
+Silverlight to create a graphical client for the simple chat server.
+
+First follow the instructions in the C++ Glacier2 chat demo README
+to start the server and the Glacier2 router.
+
+1) You must use the server from the C++ demo directory, before
+ starting the Glacier2 router, you must edit the client endpoints to
+ use a port in the range allowed by Silverlight.
+
+ Edit the config.glacier2 file from the C++ chat demo directory and
+ update the property Glacier2.Client.Endpoints as follow:
+
+ Glacier2.Client.Endpoints=tcp -p 4502 -h 127.0.0.1
+
+2) Follow the instructions in the C++ demo README to start the server
+ and the Glacier2 router.
+
+3) In a command window, start the policy server.
+
+ > cd <Ice installation directory>\bin
+ > policyserver 127.0.0.1 ..\config\PolicyResponse.xml
+
+4) From Visual Studio open the `chat.Web' project and start the chat
+ Silverlight application using the "Debug > Start new instance"
+ command.
diff --git a/cs/demo/Glacier2/sl/chat.Web/Properties/AssemblyInfo.cs b/cs/demo/Glacier2/sl/chat.Web/Properties/AssemblyInfo.cs
new file mode 100644
index 00000000000..61f17874e1a
--- /dev/null
+++ b/cs/demo/Glacier2/sl/chat.Web/Properties/AssemblyInfo.cs
@@ -0,0 +1,35 @@
+using System.Reflection;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+// General Information about an assembly is controlled through the following
+// set of attributes. Change these attribute values to modify the information
+// associated with an assembly.
+[assembly: AssemblyTitle("chat.Web")]
+[assembly: AssemblyDescription("")]
+[assembly: AssemblyConfiguration("")]
+[assembly: AssemblyCompany("ZeroC")]
+[assembly: AssemblyProduct("chat.Web")]
+[assembly: AssemblyCopyright("Copyright © ZeroC 2012")]
+[assembly: AssemblyTrademark("")]
+[assembly: AssemblyCulture("")]
+
+// Setting ComVisible to false makes the types in this assembly not visible
+// to COM components. If you need to access a type in this assembly from
+// COM, set the ComVisible attribute to true on that type.
+[assembly: ComVisible(false)]
+
+// The following GUID is for the ID of the typelib if this project is exposed to COM
+[assembly: Guid("2d00642b-9469-4eb9-b453-fca0dca032e5")]
+
+// Version information for an assembly consists of the following four values:
+//
+// Major Version
+// Minor Version
+// Build Number
+// Revision
+//
+// You can specify all the values or you can default the Revision and Build Numbers
+// by using the '*' as shown below:
+[assembly: AssemblyVersion("1.0.0.0")]
+[assembly: AssemblyFileVersion("1.0.0.0")]
diff --git a/cs/demo/Glacier2/sl/chat.Web/Silverlight.js b/cs/demo/Glacier2/sl/chat.Web/Silverlight.js
new file mode 100644
index 00000000000..15e04097676
--- /dev/null
+++ b/cs/demo/Glacier2/sl/chat.Web/Silverlight.js
@@ -0,0 +1,2 @@
+//v2.0.30511.0
+if(!window.Silverlight)window.Silverlight={};Silverlight._silverlightCount=0;Silverlight.__onSilverlightInstalledCalled=false;Silverlight.fwlinkRoot="http://go2.microsoft.com/fwlink/?LinkID=";Silverlight.__installationEventFired=false;Silverlight.onGetSilverlight=null;Silverlight.onSilverlightInstalled=function(){window.location.reload(false)};Silverlight.isInstalled=function(b){if(b==undefined)b=null;var a=false,m=null;try{var i=null,j=false;if(window.ActiveXObject)try{i=new ActiveXObject("AgControl.AgControl");if(b===null)a=true;else if(i.IsVersionSupported(b))a=true;i=null}catch(l){j=true}else j=true;if(j){var k=navigator.plugins["Silverlight Plug-In"];if(k)if(b===null)a=true;else{var h=k.description;if(h==="1.0.30226.2")h="2.0.30226.2";var c=h.split(".");while(c.length>3)c.pop();while(c.length<4)c.push(0);var e=b.split(".");while(e.length>4)e.pop();var d,g,f=0;do{d=parseInt(e[f]);g=parseInt(c[f]);f++}while(f<e.length&&d===g);if(d<=g&&!isNaN(d))a=true}}}catch(l){a=false}return a};Silverlight.WaitForInstallCompletion=function(){if(!Silverlight.isBrowserRestartRequired&&Silverlight.onSilverlightInstalled){try{navigator.plugins.refresh()}catch(a){}if(Silverlight.isInstalled(null)&&!Silverlight.__onSilverlightInstalledCalled){Silverlight.onSilverlightInstalled();Silverlight.__onSilverlightInstalledCalled=true}else setTimeout(Silverlight.WaitForInstallCompletion,3e3)}};Silverlight.__startup=function(){navigator.plugins.refresh();Silverlight.isBrowserRestartRequired=Silverlight.isInstalled(null);if(!Silverlight.isBrowserRestartRequired){Silverlight.WaitForInstallCompletion();if(!Silverlight.__installationEventFired){Silverlight.onInstallRequired();Silverlight.__installationEventFired=true}}else if(window.navigator.mimeTypes){var b=navigator.mimeTypes["application/x-silverlight-2"],c=navigator.mimeTypes["application/x-silverlight-2-b2"],d=navigator.mimeTypes["application/x-silverlight-2-b1"],a=d;if(c)a=c;if(!b&&(d||c)){if(!Silverlight.__installationEventFired){Silverlight.onUpgradeRequired();Silverlight.__installationEventFired=true}}else if(b&&a)if(b.enabledPlugin&&a.enabledPlugin)if(b.enabledPlugin.description!=a.enabledPlugin.description)if(!Silverlight.__installationEventFired){Silverlight.onRestartRequired();Silverlight.__installationEventFired=true}}if(!Silverlight.disableAutoStartup)if(window.removeEventListener)window.removeEventListener("load",Silverlight.__startup,false);else window.detachEvent("onload",Silverlight.__startup)};if(!Silverlight.disableAutoStartup)if(window.addEventListener)window.addEventListener("load",Silverlight.__startup,false);else window.attachEvent("onload",Silverlight.__startup);Silverlight.createObject=function(m,f,e,k,l,h,j){var d={},a=k,c=l;d.version=a.version;a.source=m;d.alt=a.alt;if(h)a.initParams=h;if(a.isWindowless&&!a.windowless)a.windowless=a.isWindowless;if(a.framerate&&!a.maxFramerate)a.maxFramerate=a.framerate;if(e&&!a.id)a.id=e;delete a.ignoreBrowserVer;delete a.inplaceInstallPrompt;delete a.version;delete a.isWindowless;delete a.framerate;delete a.data;delete a.src;delete a.alt;if(Silverlight.isInstalled(d.version)){for(var b in c)if(c[b]){if(b=="onLoad"&&typeof c[b]=="function"&&c[b].length!=1){var i=c[b];c[b]=function(a){return i(document.getElementById(e),j,a)}}var g=Silverlight.__getHandlerName(c[b]);if(g!=null){a[b]=g;c[b]=null}else throw"typeof events."+b+" must be 'function' or 'string'";}slPluginHTML=Silverlight.buildHTML(a)}else slPluginHTML=Silverlight.buildPromptHTML(d);if(f)f.innerHTML=slPluginHTML;else return slPluginHTML};Silverlight.buildHTML=function(a){var b=[];b.push('<object type="application/x-silverlight" data="data:application/x-silverlight,"');if(a.id!=null)b.push(' id="'+Silverlight.HtmlAttributeEncode(a.id)+'"');if(a.width!=null)b.push(' width="'+a.width+'"');if(a.height!=null)b.push(' height="'+a.height+'"');b.push(" >");delete a.id;delete a.width;delete a.height;for(var c in a)if(a[c])b.push('<param name="'+Silverlight.HtmlAttributeEncode(c)+'" value="'+Silverlight.HtmlAttributeEncode(a[c])+'" />');b.push("</object>");return b.join("")};Silverlight.createObjectEx=function(b){var a=b,c=Silverlight.createObject(a.source,a.parentElement,a.id,a.properties,a.events,a.initParams,a.context);if(a.parentElement==null)return c};Silverlight.buildPromptHTML=function(b){var a="",d=Silverlight.fwlinkRoot,c=b.version;if(b.alt)a=b.alt;else{if(!c)c="";a="<a href='javascript:Silverlight.getSilverlight(\"{1}\");' style='text-decoration: none;'><img src='{2}' alt='Get Microsoft Silverlight' style='border-style: none'/></a>";a=a.replace("{1}",c);a=a.replace("{2}",d+"108181")}return a};Silverlight.getSilverlight=function(e){if(Silverlight.onGetSilverlight)Silverlight.onGetSilverlight();var b="",a=String(e).split(".");if(a.length>1){var c=parseInt(a[0]);if(isNaN(c)||c<2)b="1.0";else b=a[0]+"."+a[1]}var d="";if(b.match(/^\d+\056\d+$/))d="&v="+b;Silverlight.followFWLink("149156"+d)};Silverlight.followFWLink=function(a){top.location=Silverlight.fwlinkRoot+String(a)};Silverlight.HtmlAttributeEncode=function(c){var a,b="";if(c==null)return null;for(var d=0;d<c.length;d++){a=c.charCodeAt(d);if(a>96&&a<123||a>64&&a<91||a>43&&a<58&&a!=47||a==95)b=b+String.fromCharCode(a);else b=b+"&#"+a+";"}return b};Silverlight.default_error_handler=function(e,b){var d,c=b.ErrorType;d=b.ErrorCode;var a="\nSilverlight error message \n";a+="ErrorCode: "+d+"\n";a+="ErrorType: "+c+" \n";a+="Message: "+b.ErrorMessage+" \n";if(c=="ParserError"){a+="XamlFile: "+b.xamlFile+" \n";a+="Line: "+b.lineNumber+" \n";a+="Position: "+b.charPosition+" \n"}else if(c=="RuntimeError"){if(b.lineNumber!=0){a+="Line: "+b.lineNumber+" \n";a+="Position: "+b.charPosition+" \n"}a+="MethodName: "+b.methodName+" \n"}alert(a)};Silverlight.__cleanup=function(){for(var a=Silverlight._silverlightCount-1;a>=0;a--)window["__slEvent"+a]=null;Silverlight._silverlightCount=0;if(window.removeEventListener)window.removeEventListener("unload",Silverlight.__cleanup,false);else window.detachEvent("onunload",Silverlight.__cleanup)};Silverlight.__getHandlerName=function(b){var a="";if(typeof b=="string")a=b;else if(typeof b=="function"){if(Silverlight._silverlightCount==0)if(window.addEventListener)window.addEventListener("onunload",Silverlight.__cleanup,false);else window.attachEvent("onunload",Silverlight.__cleanup);var c=Silverlight._silverlightCount++;a="__slEvent"+c;window[a]=b}else a=null;return a};Silverlight.onRequiredVersionAvailable=function(){};Silverlight.onRestartRequired=function(){};Silverlight.onUpgradeRequired=function(){};Silverlight.onInstallRequired=function(){};Silverlight.IsVersionAvailableOnError=function(d,a){var b=false;try{if(a.ErrorCode==8001&&!Silverlight.__installationEventFired){Silverlight.onUpgradeRequired();Silverlight.__installationEventFired=true}else if(a.ErrorCode==8002&&!Silverlight.__installationEventFired){Silverlight.onRestartRequired();Silverlight.__installationEventFired=true}else if(a.ErrorCode==5014||a.ErrorCode==2106){if(Silverlight.__verifySilverlight2UpgradeSuccess(a.getHost()))b=true}else b=true}catch(c){}return b};Silverlight.IsVersionAvailableOnLoad=function(b){var a=false;try{if(Silverlight.__verifySilverlight2UpgradeSuccess(b.getHost()))a=true}catch(c){}return a};Silverlight.__verifySilverlight2UpgradeSuccess=function(d){var c=false,b="2.0.31005",a=null;try{if(d.IsVersionSupported(b+".99")){a=Silverlight.onRequiredVersionAvailable;c=true}else if(d.IsVersionSupported(b+".0"))a=Silverlight.onRestartRequired;else a=Silverlight.onUpgradeRequired;if(a&&!Silverlight.__installationEventFired){a();Silverlight.__installationEventFired=true}}catch(e){}return c} \ No newline at end of file
diff --git a/cs/demo/Glacier2/sl/chat.Web/Web.Debug.config b/cs/demo/Glacier2/sl/chat.Web/Web.Debug.config
new file mode 100644
index 00000000000..962e6b73a26
--- /dev/null
+++ b/cs/demo/Glacier2/sl/chat.Web/Web.Debug.config
@@ -0,0 +1,30 @@
+<?xml version="1.0"?>
+
+<!-- For more information on using web.config transformation visit http://go.microsoft.com/fwlink/?LinkId=125889 -->
+
+<configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform">
+ <!--
+ In the example below, the "SetAttributes" transform will change the value of
+ "connectionString" to use "ReleaseSQLServer" only when the "Match" locator
+ finds an atrribute "name" that has a value of "MyDB".
+
+ <connectionStrings>
+ <add name="MyDB"
+ connectionString="Data Source=ReleaseSQLServer;Initial Catalog=MyReleaseDB;Integrated Security=True"
+ xdt:Transform="SetAttributes" xdt:Locator="Match(name)"/>
+ </connectionStrings>
+ -->
+ <system.web>
+ <!--
+ In the example below, the "Replace" transform will replace the entire
+ <customErrors> section of your web.config file.
+ Note that because there is only one customErrors section under the
+ <system.web> node, there is no need to use the "xdt:Locator" attribute.
+
+ <customErrors defaultRedirect="GenericError.htm"
+ mode="RemoteOnly" xdt:Transform="Replace">
+ <error statusCode="500" redirect="InternalError.htm"/>
+ </customErrors>
+ -->
+ </system.web>
+</configuration> \ No newline at end of file
diff --git a/cs/demo/Glacier2/sl/chat.Web/Web.Release.config b/cs/demo/Glacier2/sl/chat.Web/Web.Release.config
new file mode 100644
index 00000000000..141832ba77e
--- /dev/null
+++ b/cs/demo/Glacier2/sl/chat.Web/Web.Release.config
@@ -0,0 +1,31 @@
+<?xml version="1.0"?>
+
+<!-- For more information on using web.config transformation visit http://go.microsoft.com/fwlink/?LinkId=125889 -->
+
+<configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform">
+ <!--
+ In the example below, the "SetAttributes" transform will change the value of
+ "connectionString" to use "ReleaseSQLServer" only when the "Match" locator
+ finds an atrribute "name" that has a value of "MyDB".
+
+ <connectionStrings>
+ <add name="MyDB"
+ connectionString="Data Source=ReleaseSQLServer;Initial Catalog=MyReleaseDB;Integrated Security=True"
+ xdt:Transform="SetAttributes" xdt:Locator="Match(name)"/>
+ </connectionStrings>
+ -->
+ <system.web>
+ <compilation xdt:Transform="RemoveAttributes(debug)" />
+ <!--
+ In the example below, the "Replace" transform will replace the entire
+ <customErrors> section of your web.config file.
+ Note that because there is only one customErrors section under the
+ <system.web> node, there is no need to use the "xdt:Locator" attribute.
+
+ <customErrors defaultRedirect="GenericError.htm"
+ mode="RemoteOnly" xdt:Transform="Replace">
+ <error statusCode="500" redirect="InternalError.htm"/>
+ </customErrors>
+ -->
+ </system.web>
+</configuration> \ No newline at end of file
diff --git a/cs/demo/Glacier2/sl/chat.Web/Web.config b/cs/demo/Glacier2/sl/chat.Web/Web.config
new file mode 100644
index 00000000000..0598be112f3
--- /dev/null
+++ b/cs/demo/Glacier2/sl/chat.Web/Web.config
@@ -0,0 +1,13 @@
+<?xml version="1.0"?>
+
+<!--
+ For more information on how to configure your ASP.NET application, please visit
+ http://go.microsoft.com/fwlink/?LinkId=169433
+ -->
+
+<configuration>
+ <system.web>
+ <compilation debug="true" targetFramework="4.0" />
+ </system.web>
+
+</configuration>
diff --git a/cs/demo/Glacier2/sl/chat.Web/chat.Web.csproj b/cs/demo/Glacier2/sl/chat.Web/chat.Web.csproj
new file mode 100644
index 00000000000..332d25acc5a
--- /dev/null
+++ b/cs/demo/Glacier2/sl/chat.Web/chat.Web.csproj
@@ -0,0 +1,99 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup>
+ <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+ <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+ <ProductVersion>
+ </ProductVersion>
+ <SchemaVersion>2.0</SchemaVersion>
+ <ProjectGuid>{C0234952-390B-4C8F-8288-C7B0BADAD80E}</ProjectGuid>
+ <ProjectTypeGuids>{349c5851-65df-11da-9384-00065b846f21};{fae04ec0-301f-11d3-bf4b-00c04f79efbc}</ProjectTypeGuids>
+ <OutputType>Library</OutputType>
+ <AppDesignerFolder>Properties</AppDesignerFolder>
+ <RootNamespace>chat.Web</RootNamespace>
+ <AssemblyName>chat.Web</AssemblyName>
+ <TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
+ <UseIISExpress>false</UseIISExpress>
+ <SilverlightApplicationList>{78FA0B57-6672-4173-8CA3-C81FA402F4E1}|..\chat\chat.csproj|ClientBin|False</SilverlightApplicationList>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+ <DebugSymbols>true</DebugSymbols>
+ <DebugType>full</DebugType>
+ <Optimize>false</Optimize>
+ <OutputPath>bin\</OutputPath>
+ <DefineConstants>DEBUG;TRACE</DefineConstants>
+ <ErrorReport>prompt</ErrorReport>
+ <WarningLevel>4</WarningLevel>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+ <DebugType>pdbonly</DebugType>
+ <Optimize>true</Optimize>
+ <OutputPath>bin\</OutputPath>
+ <DefineConstants>TRACE</DefineConstants>
+ <ErrorReport>prompt</ErrorReport>
+ <WarningLevel>4</WarningLevel>
+ </PropertyGroup>
+ <ItemGroup>
+ <Reference Include="Microsoft.CSharp" />
+ <Reference Include="System.Web.DynamicData" />
+ <Reference Include="System.Web.Entity" />
+ <Reference Include="System.Web.ApplicationServices" />
+ <Reference Include="System" />
+ <Reference Include="System.Data" />
+ <Reference Include="System.Core" />
+ <Reference Include="System.Data.DataSetExtensions" />
+ <Reference Include="System.Web.Extensions" />
+ <Reference Include="System.Xml.Linq" />
+ <Reference Include="System.Drawing" />
+ <Reference Include="System.Web" />
+ <Reference Include="System.Xml" />
+ <Reference Include="System.Configuration" />
+ <Reference Include="System.Web.Services" />
+ <Reference Include="System.EnterpriseServices" />
+ </ItemGroup>
+ <ItemGroup>
+ <Content Include="chatTestPage.aspx" />
+ <Content Include="chatTestPage.html" />
+ <Content Include="ClientBin\chat.xap" />
+ <Content Include="Silverlight.js" />
+ <Content Include="Web.config" />
+ <Content Include="Web.Debug.config">
+ <DependentUpon>Web.config</DependentUpon>
+ </Content>
+ <Content Include="Web.Release.config">
+ <DependentUpon>Web.config</DependentUpon>
+ </Content>
+ </ItemGroup>
+ <ItemGroup>
+ <Compile Include="Properties\AssemblyInfo.cs" />
+ </ItemGroup>
+ <ItemGroup />
+ <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
+ <Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v10.0\WebApplications\Microsoft.WebApplication.targets" />
+ <ProjectExtensions>
+ <VisualStudio>
+ <FlavorProperties GUID="{349c5851-65df-11da-9384-00065b846f21}">
+ <WebProjectProperties>
+ <UseIIS>False</UseIIS>
+ <AutoAssignPort>True</AutoAssignPort>
+ <DevelopmentServerPort>49884</DevelopmentServerPort>
+ <DevelopmentServerVPath>/</DevelopmentServerVPath>
+ <IISUrl>
+ </IISUrl>
+ <NTLMAuthentication>False</NTLMAuthentication>
+ <UseCustomServer>False</UseCustomServer>
+ <CustomServerUrl>
+ </CustomServerUrl>
+ <SaveServerSettingsInUserFile>False</SaveServerSettingsInUserFile>
+ </WebProjectProperties>
+ </FlavorProperties>
+ </VisualStudio>
+ </ProjectExtensions>
+ <!-- To modify your build process, add your task inside one of the targets below and uncomment it.
+ Other similar extension points exist, see Microsoft.Common.targets.
+ <Target Name="BeforeBuild">
+ </Target>
+ <Target Name="AfterBuild">
+ </Target>
+ -->
+</Project> \ No newline at end of file
diff --git a/cs/demo/Glacier2/sl/chat.Web/chatTestPage.aspx b/cs/demo/Glacier2/sl/chat.Web/chatTestPage.aspx
new file mode 100644
index 00000000000..0679df38c70
--- /dev/null
+++ b/cs/demo/Glacier2/sl/chat.Web/chatTestPage.aspx
@@ -0,0 +1,74 @@
+<%@ Page Language="C#" AutoEventWireup="true" %>
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" >
+<head runat="server">
+ <title>chat</title>
+ <style type="text/css">
+ html, body {
+ height: 100%;
+ overflow: auto;
+ }
+ body {
+ padding: 0;
+ margin: 0;
+ }
+ #silverlightControlHost {
+ height: 100%;
+ text-align:center;
+ }
+ </style>
+ <script type="text/javascript" src="Silverlight.js"></script>
+ <script type="text/javascript">
+ function onSilverlightError(sender, args) {
+ var appSource = "";
+ if (sender != null && sender != 0) {
+ appSource = sender.getHost().Source;
+ }
+
+ var errorType = args.ErrorType;
+ var iErrorCode = args.ErrorCode;
+
+ if (errorType == "ImageError" || errorType == "MediaError") {
+ return;
+ }
+
+ var errMsg = "Unhandled Error in Silverlight Application " + appSource + "\n" ;
+
+ errMsg += "Code: "+ iErrorCode + " \n";
+ errMsg += "Category: " + errorType + " \n";
+ errMsg += "Message: " + args.ErrorMessage + " \n";
+
+ if (errorType == "ParserError") {
+ errMsg += "File: " + args.xamlFile + " \n";
+ errMsg += "Line: " + args.lineNumber + " \n";
+ errMsg += "Position: " + args.charPosition + " \n";
+ }
+ else if (errorType == "RuntimeError") {
+ if (args.lineNumber != 0) {
+ errMsg += "Line: " + args.lineNumber + " \n";
+ errMsg += "Position: " + args.charPosition + " \n";
+ }
+ errMsg += "MethodName: " + args.methodName + " \n";
+ }
+
+ throw new Error(errMsg);
+ }
+ </script>
+</head>
+<body>
+ <form id="form1" runat="server" style="height:100%">
+ <div id="silverlightControlHost">
+ <object data="data:application/x-silverlight-2," type="application/x-silverlight-2" width="100%" height="100%">
+ <param name="source" value="ClientBin/chat.xap"/>
+ <param name="onError" value="onSilverlightError" />
+ <param name="background" value="white" />
+ <param name="minRuntimeVersion" value="5.0.61118.0" />
+ <param name="autoUpgrade" value="true" />
+ <a href="http://go.microsoft.com/fwlink/?LinkID=149156&v=5.0.61118.0" style="text-decoration:none">
+ <img src="http://go.microsoft.com/fwlink/?LinkId=161376" alt="Get Microsoft Silverlight" style="border-style:none"/>
+ </a>
+ </object><iframe id="_sl_historyFrame" style="visibility:hidden;height:0px;width:0px;border:0px"></iframe></div>
+ </form>
+</body>
+</html>
diff --git a/cs/demo/Glacier2/sl/chat.Web/chatTestPage.html b/cs/demo/Glacier2/sl/chat.Web/chatTestPage.html
new file mode 100644
index 00000000000..b14f7516061
--- /dev/null
+++ b/cs/demo/Glacier2/sl/chat.Web/chatTestPage.html
@@ -0,0 +1,73 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" >
+
+<head>
+ <title>chat</title>
+ <style type="text/css">
+ html, body {
+ height: 100%;
+ overflow: auto;
+ }
+ body {
+ padding: 0;
+ margin: 0;
+ }
+ #silverlightControlHost {
+ height: 100%;
+ text-align:center;
+ }
+ </style>
+ <script type="text/javascript" src="Silverlight.js"></script>
+ <script type="text/javascript">
+ function onSilverlightError(sender, args) {
+ var appSource = "";
+ if (sender != null && sender != 0) {
+ appSource = sender.getHost().Source;
+ }
+
+ var errorType = args.ErrorType;
+ var iErrorCode = args.ErrorCode;
+
+ if (errorType == "ImageError" || errorType == "MediaError") {
+ return;
+ }
+
+ var errMsg = "Unhandled Error in Silverlight Application " + appSource + "\n" ;
+
+ errMsg += "Code: "+ iErrorCode + " \n";
+ errMsg += "Category: " + errorType + " \n";
+ errMsg += "Message: " + args.ErrorMessage + " \n";
+
+ if (errorType == "ParserError") {
+ errMsg += "File: " + args.xamlFile + " \n";
+ errMsg += "Line: " + args.lineNumber + " \n";
+ errMsg += "Position: " + args.charPosition + " \n";
+ }
+ else if (errorType == "RuntimeError") {
+ if (args.lineNumber != 0) {
+ errMsg += "Line: " + args.lineNumber + " \n";
+ errMsg += "Position: " + args.charPosition + " \n";
+ }
+ errMsg += "MethodName: " + args.methodName + " \n";
+ }
+
+ throw new Error(errMsg);
+ }
+ </script>
+</head>
+<body>
+ <form id="form1" runat="server" style="height:100%">
+ <div id="silverlightControlHost">
+ <object data="data:application/x-silverlight-2," type="application/x-silverlight-2" width="100%" height="100%">
+ <param name="source" value="ClientBin/chat.xap"/>
+ <param name="onError" value="onSilverlightError" />
+ <param name="background" value="white" />
+ <param name="minRuntimeVersion" value="5.0.61118.0" />
+ <param name="autoUpgrade" value="true" />
+ <a href="http://go.microsoft.com/fwlink/?LinkID=149156&v=5.0.61118.0" style="text-decoration:none">
+ <img src="http://go.microsoft.com/fwlink/?LinkId=161376" alt="Get Microsoft Silverlight" style="border-style:none"/>
+ </a>
+ </object><iframe id="_sl_historyFrame" style="visibility:hidden;height:0px;width:0px;border:0px"></iframe></div>
+ </form>
+</body>
+</html>
diff --git a/cs/demo/Glacier2/sl/chat/.gitignore b/cs/demo/Glacier2/sl/chat/.gitignore
new file mode 100644
index 00000000000..63fb689dfa8
--- /dev/null
+++ b/cs/demo/Glacier2/sl/chat/.gitignore
@@ -0,0 +1,3 @@
+# Dummy file, so that git retains this otherwise empty directory.
+Chat.cs
+Bin/*
diff --git a/cs/demo/Glacier2/sl/chat/App.xaml b/cs/demo/Glacier2/sl/chat/App.xaml
new file mode 100644
index 00000000000..1db4dba1dc4
--- /dev/null
+++ b/cs/demo/Glacier2/sl/chat/App.xaml
@@ -0,0 +1,8 @@
+<Application xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
+ xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
+ x:Class="chat.App"
+ >
+ <Application.Resources>
+
+ </Application.Resources>
+</Application>
diff --git a/cs/demo/Glacier2/sl/chat/App.xaml.cs b/cs/demo/Glacier2/sl/chat/App.xaml.cs
new file mode 100644
index 00000000000..d6b572f444b
--- /dev/null
+++ b/cs/demo/Glacier2/sl/chat/App.xaml.cs
@@ -0,0 +1,79 @@
+// **********************************************************************
+//
+// Copyright (c) 2003-2011 ZeroC, Inc. All rights reserved.
+//
+// This copy of Ice is licensed to you under the terms described in the
+// ICE_LICENSE file included in this distribution.
+//
+// **********************************************************************
+
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Net;
+using System.Windows;
+using System.Windows.Controls;
+using System.Windows.Documents;
+using System.Windows.Input;
+using System.Windows.Media;
+using System.Windows.Media.Animation;
+using System.Windows.Shapes;
+
+namespace chat
+{
+ public partial class App : Application
+ {
+
+ public App()
+ {
+ this.Startup += this.Application_Startup;
+ this.Exit += this.Application_Exit;
+ this.UnhandledException += this.Application_UnhandledException;
+ _coordinator = new Coordinator();
+ InitializeComponent();
+ }
+
+ private void Application_Startup(object sender, StartupEventArgs e)
+ {
+ this.RootVisual = new MainPage();
+ }
+
+ private void Application_Exit(object sender, EventArgs e)
+ {
+
+ }
+
+ private void Application_UnhandledException(object sender, ApplicationUnhandledExceptionEventArgs e)
+ {
+ // If the app is running outside of the debugger then report the exception using
+ // the browser's exception mechanism. On IE this will display it a yellow alert
+ // icon in the status bar and Firefox will display a script error.
+ if (!System.Diagnostics.Debugger.IsAttached)
+ {
+
+ // NOTE: This will allow the application to continue running after an exception has been thrown
+ // but not handled.
+ // For production applications this error handling should be replaced with something that will
+ // report the error to the website and stop the application.
+ e.Handled = true;
+ Deployment.Current.Dispatcher.BeginInvoke(delegate { ReportErrorToDOM(e); });
+ }
+ }
+
+ private void ReportErrorToDOM(ApplicationUnhandledExceptionEventArgs e)
+ {
+ try
+ {
+ string errorMsg = e.ExceptionObject.Message + e.ExceptionObject.StackTrace;
+ errorMsg = errorMsg.Replace('"', '\'').Replace("\r\n", @"\n");
+
+ System.Windows.Browser.HtmlPage.Window.Eval("throw new Error(\"Unhandled Error in Silverlight Application " + errorMsg + "\");");
+ }
+ catch (Exception)
+ {
+ }
+ }
+
+ private Coordinator _coordinator;
+ }
+}
diff --git a/cs/demo/Glacier2/sl/chat/Chat.ice b/cs/demo/Glacier2/sl/chat/Chat.ice
new file mode 100644
index 00000000000..0d3cca58f28
--- /dev/null
+++ b/cs/demo/Glacier2/sl/chat/Chat.ice
@@ -0,0 +1,28 @@
+// **********************************************************************
+//
+// Copyright (c) 2003-2011 ZeroC, Inc. All rights reserved.
+//
+// This copy of Ice is licensed to you under the terms described in the
+// ICE_LICENSE file included in this distribution.
+//
+// **********************************************************************
+
+#pragma once
+
+#include <Glacier2/Session.ice>
+
+module Demo
+{
+
+interface ChatCallback
+{
+ void message(string data);
+};
+
+interface ChatSession extends Glacier2::Session
+{
+ ["ami"] void setCallback(ChatCallback* callback);
+ ["ami"] void say(string data);
+};
+
+};
diff --git a/cs/demo/Glacier2/sl/chat/ChatPage.xaml b/cs/demo/Glacier2/sl/chat/ChatPage.xaml
new file mode 100644
index 00000000000..59f9263b7ce
--- /dev/null
+++ b/cs/demo/Glacier2/sl/chat/ChatPage.xaml
@@ -0,0 +1,44 @@
+<navigation:Page x:Class="chat.ChatPage"
+ xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
+ xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
+ xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
+ xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
+ mc:Ignorable="d"
+ xmlns:navigation="clr-namespace:System.Windows.Controls;assembly=System.Windows.Controls.Navigation"
+ d:DesignWidth="640" d:DesignHeight="480"
+ Title="ChatPage Page">
+ <Grid>
+ <Grid.RowDefinitions>
+ <RowDefinition Height="AUTO"></RowDefinition>
+ <RowDefinition Height="5*"></RowDefinition>
+ <RowDefinition Height="AUTO"></RowDefinition>
+ <RowDefinition Height="AUTO"></RowDefinition>
+ </Grid.RowDefinitions>
+ <Grid.ColumnDefinitions>
+ <ColumnDefinition></ColumnDefinition>
+ </Grid.ColumnDefinitions>
+
+ <StackPanel Grid.Row="0" Orientation="Horizontal" Margin="5, 5, 5, 5">
+ <Button x:Name="btnLogout" Content="Logout" TabIndex="0" Click="btnLogoutClick" />
+ </StackPanel>
+ <!-- Define a text box to show chat messages. -->
+ <TextBox Grid.Row="1" x:Name="txtMessages"
+ FontSize="12" Text="" TextWrapping="Wrap" IsEnabled="True"
+ HorizontalScrollBarVisibility="Auto"
+ ScrollViewer.VerticalScrollBarVisibility="Auto"
+ IsReadOnly="True" TabIndex="1"/>
+
+ <!--- Define an editable text box for the user to write messages. -->
+ <TextBox Grid.Row="2"
+ Name="input"
+ IsEnabled="True"
+ TextWrapping="Wrap"
+ HorizontalScrollBarVisibility="Hidden"
+ VerticalScrollBarVisibility="Auto"
+ Background="WhiteSmoke" KeyDown="sendMessage" TabIndex="2"></TextBox>
+
+ <!-- TextBlock with the status message -->
+ <TextBlock Grid.Row="3" Name="status" VerticalAlignment="Bottom">Not connected</TextBlock>
+
+ </Grid>
+</navigation:Page>
diff --git a/cs/demo/Glacier2/sl/chat/ChatPage.xaml.cs b/cs/demo/Glacier2/sl/chat/ChatPage.xaml.cs
new file mode 100644
index 00000000000..ee8471c8cb3
--- /dev/null
+++ b/cs/demo/Glacier2/sl/chat/ChatPage.xaml.cs
@@ -0,0 +1,68 @@
+// **********************************************************************
+//
+// Copyright (c) 2003-2011 ZeroC, Inc. All rights reserved.
+//
+// This copy of Ice is licensed to you under the terms described in the
+// ICE_LICENSE file included in this distribution.
+//
+// **********************************************************************
+
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Net;
+using System.Windows;
+using System.Windows.Controls;
+using System.Windows.Documents;
+using System.Windows.Input;
+using System.Windows.Media;
+using System.Windows.Media.Animation;
+using System.Windows.Shapes;
+using System.Windows.Navigation;
+
+namespace chat
+{
+ public partial class ChatPage : Page
+ {
+ public ChatPage()
+ {
+ InitializeComponent();
+ Coordinator.getInstance().setChatPage(this);
+ if (Coordinator.getInstance().getMainPage().getState() == ClientState.Connected)
+ {
+ status.Text = "Connected";
+ }
+ else
+ {
+ status.Text = "Not Connected";
+ }
+ }
+
+
+ public void appendMessage(string message)
+ {
+ txtMessages.Text += message;
+ txtMessages.SelectionLength = 0;
+ txtMessages.SelectionStart = txtMessages.Text.Length;
+ }
+
+ private void
+ sendMessage(object sender, KeyEventArgs e)
+ {
+ if(e.Key == Key.Enter)
+ {
+ string message = input.Text.Trim();
+ if(message.Length > 0)
+ {
+ Coordinator.getInstance().sendMessage(message);
+ }
+ input.Text = "";
+ }
+ }
+
+ private void btnLogoutClick(object sender, RoutedEventArgs e)
+ {
+ Coordinator.getInstance().destroySession();
+ }
+ }
+}
diff --git a/cs/demo/Glacier2/sl/chat/ConnectingPage.xaml b/cs/demo/Glacier2/sl/chat/ConnectingPage.xaml
new file mode 100644
index 00000000000..cc05c67cbfa
--- /dev/null
+++ b/cs/demo/Glacier2/sl/chat/ConnectingPage.xaml
@@ -0,0 +1,13 @@
+<navigation:Page x:Class="chat.ConnectingPage"
+ xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
+ xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
+ xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
+ xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
+ mc:Ignorable="d"
+ xmlns:navigation="clr-namespace:System.Windows.Controls;assembly=System.Windows.Controls.Navigation"
+ d:DesignWidth="640" d:DesignHeight="480"
+ Title="ConnectingPage Page">
+ <StackPanel Orientation="Horizontal" VerticalAlignment="Center" HorizontalAlignment="Center">
+ <TextBlock>Connecting</TextBlock>
+ </StackPanel>
+</navigation:Page>
diff --git a/cs/demo/Glacier2/sl/chat/ConnectingPage.xaml.cs b/cs/demo/Glacier2/sl/chat/ConnectingPage.xaml.cs
new file mode 100644
index 00000000000..39822be2941
--- /dev/null
+++ b/cs/demo/Glacier2/sl/chat/ConnectingPage.xaml.cs
@@ -0,0 +1,32 @@
+// **********************************************************************
+//
+// Copyright (c) 2003-2011 ZeroC, Inc. All rights reserved.
+//
+// This copy of Ice is licensed to you under the terms described in the
+// ICE_LICENSE file included in this distribution.
+//
+// **********************************************************************
+
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Net;
+using System.Windows;
+using System.Windows.Controls;
+using System.Windows.Documents;
+using System.Windows.Input;
+using System.Windows.Media;
+using System.Windows.Media.Animation;
+using System.Windows.Shapes;
+using System.Windows.Navigation;
+
+namespace chat
+{
+ public partial class ConnectingPage : Page
+ {
+ public ConnectingPage()
+ {
+ InitializeComponent();
+ }
+ }
+}
diff --git a/cs/demo/Glacier2/sl/chat/Coordinator.cs b/cs/demo/Glacier2/sl/chat/Coordinator.cs
new file mode 100644
index 00000000000..3ca4caca046
--- /dev/null
+++ b/cs/demo/Glacier2/sl/chat/Coordinator.cs
@@ -0,0 +1,203 @@
+// **********************************************************************
+//
+// Copyright (c) 2003-2011 ZeroC, Inc. All rights reserved.
+//
+// This copy of Ice is licensed to you under the terms described in the
+// ICE_LICENSE file included in this distribution.
+//
+// **********************************************************************
+
+using System;
+using System.Net;
+using System.Windows;
+using System.Windows.Controls;
+using System.Windows.Documents;
+using System.Windows.Ink;
+using System.Windows.Input;
+using System.Windows.Media;
+using System.Windows.Media.Animation;
+using System.Windows.Shapes;
+using Glacier2;
+
+namespace chat
+{
+ public enum ClientState { Disconnected, Connecting, Connected, ConnectionLost, Disconnecting }
+
+ public class Coordinator : Glacier2.SessionCallback
+ {
+ public class LoginData
+ {
+ public LoginData()
+ {
+ host = "localhost";
+ username = "test";
+ password = "";
+ }
+
+ public String host;
+ public String username;
+ public String password;
+ }
+
+ private class ChatCallbackI : Demo.ChatCallbackDisp_
+ {
+ public override void
+ message(string data, Ice.Current current)
+ {
+ Coordinator.getInstance().getChatPage().appendMessage(data + Environment.NewLine);
+ }
+ }
+
+ public Coordinator()
+ {
+ _instance = this;
+ Ice.InitializationData initData = new Ice.InitializationData();
+ initData.properties = Ice.Util.createProperties();
+ initData.dispatcher = delegate(System.Action action, Ice.Connection connection)
+ {
+ try
+ {
+ _loginPage.Dispatcher.BeginInvoke(action);
+ }
+ catch(Ice.CommunicatorDestroyedException ex)
+ {
+ _mainPage.setState(ClientState.ConnectionLost);
+ _mainPage.setError(ex.ToString());
+ }
+ };
+ _factory = new SessionFactoryHelper(initData, this);
+ }
+
+ public void doLogin(LoginData loginData)
+ {
+ _mainPage.setState(ClientState.Connecting);
+ _loginData = loginData;
+ //
+ // IceSSL isn't supported with Silverlight.
+ //
+ _factory.setSecure(false);
+ _factory.setRouterHost(_loginData.host);
+ _factory.setPort(4502);
+ _factory.setRouterIdentity(new Ice.Identity("router", "DemoGlacier2"));
+ _session = _factory.connect(_loginData.username, _loginData.password);
+ }
+
+ public void
+ destroySession()
+ {
+ if(_session != null)
+ {
+ _mainPage.setState(ClientState.Disconnecting);
+ _session.destroy();
+ }
+ }
+
+ public void
+ sendMessage(string message)
+ {
+ _chat.begin_say(message).whenCompleted(delegate(Ice.Exception ex)
+ {
+ _chatPage.appendMessage("<system-message> - " + ex.ToString() + Environment.NewLine);
+ });
+ }
+
+ public void connectFailed(SessionHelper session, Exception ex)
+ {
+ // If the session has been reassigned avoid the
+ // spurious callback.
+ if(session != _session)
+ {
+ return;
+ }
+ _mainPage.setState(ClientState.Disconnected);
+ _mainPage.setError("Connect Failed:" + Environment.NewLine + ex.ToString());
+ }
+
+ public void connected(SessionHelper session)
+ {
+ // If the session has been reassigned avoid the
+ // spurious callback.
+ if(session != _session)
+ {
+ return;
+ }
+
+ Ice.Object servant = new ChatCallbackI();
+
+ Demo.ChatCallbackPrx callback = Demo.ChatCallbackPrxHelper.uncheckedCast(_session.addWithUUID(servant));
+ _chat = Demo.ChatSessionPrxHelper.uncheckedCast(_session.session());
+ _chat.begin_setCallback(callback).whenCompleted(
+ delegate()
+ {
+ _mainPage.setState(ClientState.Connected);
+ },
+ delegate(Ice.Exception ex)
+ {
+ if(_session != null)
+ {
+ _session.destroy();
+ }
+ });
+ }
+
+ public void createdCommunicator(SessionHelper session)
+ {
+ }
+
+ public void disconnected(SessionHelper session)
+ {
+ // If the session has been reassigned avoid the
+ // spurious callback.
+ if(session != _session)
+ {
+ return;
+ }
+ _session = null;
+ _mainPage.setState(ClientState.Disconnected);
+ }
+
+ public void setChatPage(ChatPage page)
+ {
+ _chatPage = page;
+ }
+
+ public ChatPage getChatPage()
+ {
+ return _chatPage;
+ }
+
+ public void setLoginPage(LoginPage page)
+ {
+ _loginPage = page;
+ }
+
+ public LoginPage getLoginPage()
+ {
+ return _loginPage;
+ }
+
+ public void setMainPage(MainPage page)
+ {
+ _mainPage = page;
+ }
+
+ public MainPage getMainPage()
+ {
+ return _mainPage;
+ }
+
+ public static Coordinator getInstance()
+ {
+ return _instance;
+ }
+
+ private SessionFactoryHelper _factory;
+ private LoginData _loginData;
+ private SessionHelper _session;
+ private Demo.ChatSessionPrx _chat;
+ private MainPage _mainPage;
+ private LoginPage _loginPage;
+ private ChatPage _chatPage;
+ private static Coordinator _instance;
+ }
+}
diff --git a/cs/demo/Glacier2/sl/chat/DisconnectingPage.xaml b/cs/demo/Glacier2/sl/chat/DisconnectingPage.xaml
new file mode 100644
index 00000000000..25f1380b9a2
--- /dev/null
+++ b/cs/demo/Glacier2/sl/chat/DisconnectingPage.xaml
@@ -0,0 +1,13 @@
+<navigation:Page x:Class="chat.DisconnectingPage"
+ xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
+ xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
+ xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
+ xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
+ mc:Ignorable="d"
+ xmlns:navigation="clr-namespace:System.Windows.Controls;assembly=System.Windows.Controls.Navigation"
+ d:DesignWidth="640" d:DesignHeight="480"
+ Title="DisconnectingPage Page">
+ <StackPanel Orientation="Horizontal" VerticalAlignment="Center" HorizontalAlignment="Center">
+ <TextBlock>Disconnecting</TextBlock>
+ </StackPanel>
+</navigation:Page>
diff --git a/cs/demo/Glacier2/sl/chat/DisconnectingPage.xaml.cs b/cs/demo/Glacier2/sl/chat/DisconnectingPage.xaml.cs
new file mode 100644
index 00000000000..3243574f1d0
--- /dev/null
+++ b/cs/demo/Glacier2/sl/chat/DisconnectingPage.xaml.cs
@@ -0,0 +1,32 @@
+// **********************************************************************
+//
+// Copyright (c) 2003-2011 ZeroC, Inc. All rights reserved.
+//
+// This copy of Ice is licensed to you under the terms described in the
+// ICE_LICENSE file included in this distribution.
+//
+// **********************************************************************
+
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Net;
+using System.Windows;
+using System.Windows.Controls;
+using System.Windows.Documents;
+using System.Windows.Input;
+using System.Windows.Media;
+using System.Windows.Media.Animation;
+using System.Windows.Shapes;
+using System.Windows.Navigation;
+
+namespace chat
+{
+ public partial class DisconnectingPage : Page
+ {
+ public DisconnectingPage()
+ {
+ InitializeComponent();
+ }
+ }
+}
diff --git a/cs/demo/Glacier2/sl/chat/LoginPage.xaml b/cs/demo/Glacier2/sl/chat/LoginPage.xaml
new file mode 100644
index 00000000000..4fee9c375a4
--- /dev/null
+++ b/cs/demo/Glacier2/sl/chat/LoginPage.xaml
@@ -0,0 +1,25 @@
+<navigation:Page x:Class="chat.LoginPage"
+ xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
+ xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
+ xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
+ xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
+ mc:Ignorable="d"
+ xmlns:navigation="clr-namespace:System.Windows.Controls;assembly=System.Windows.Controls.Navigation"
+ d:DesignWidth="640" d:DesignHeight="480"
+ Title="LoginPage Page" >
+ <StackPanel VerticalAlignment="Center" Orientation="Vertical" MaxWidth="400" Margin="10, 10, 10, 10">
+ <TextBlock HorizontalAlignment="Center" Text="Chat Demo" Margin="5, 5, 5, 5"/>
+ <TextBlock HorizontalAlignment="Center" Text="Welcome! You can login with any username / password." Margin="5, 5, 5, 5"/>
+ <TextBlock Name="lblUsername" Margin="5, 5, 5, 5">Username:</TextBlock>
+ <TextBox Name="txtUsername" Margin="5, 5, 5, 5"></TextBox>
+ <TextBlock TextWrapping="NoWrap" Margin="5, 5, 5, 5">Password:</TextBlock>
+ <PasswordBox Name="txtPassword" Margin="5, 5, 5, 5"></PasswordBox>
+ <TextBlock Margin="5, 5, 5, 5">Host:</TextBlock>
+ <TextBox Name="txtHost" Text="localhost" Margin="5, 5, 5, 5"></TextBox>
+ <Button MaxWidth="120" x:Name="btnLogin" Content="Login" Click="btnLoginClick" Margin="5, 5, 5, 5"/>
+ <TextBox x:Name="txtError" Visibility="Collapsed"
+ FontSize="12" Text="" TextWrapping="Wrap" IsEnabled="True" Height="120"
+ Width="400" HorizontalScrollBarVisibility="Hidden"
+ VerticalScrollBarVisibility="Visible" IsReadOnly="True"/>
+ </StackPanel>
+</navigation:Page>
diff --git a/cs/demo/Glacier2/sl/chat/LoginPage.xaml.cs b/cs/demo/Glacier2/sl/chat/LoginPage.xaml.cs
new file mode 100644
index 00000000000..2006efd7613
--- /dev/null
+++ b/cs/demo/Glacier2/sl/chat/LoginPage.xaml.cs
@@ -0,0 +1,73 @@
+// **********************************************************************
+//
+// Copyright (c) 2003-2011 ZeroC, Inc. All rights reserved.
+//
+// This copy of Ice is licensed to you under the terms described in the
+// ICE_LICENSE file included in this distribution.
+//
+// **********************************************************************
+
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Net;
+using System.Windows;
+using System.Windows.Controls;
+using System.Windows.Documents;
+using System.Windows.Input;
+using System.Windows.Media;
+using System.Windows.Media.Animation;
+using System.Windows.Shapes;
+using System.Windows.Navigation;
+
+namespace chat
+{
+ public partial class LoginPage : Page
+ {
+ public LoginPage()
+ {
+ InitializeComponent();
+
+ Coordinator.LoginData loginData = new Coordinator.LoginData();
+ txtHost.Text = loginData.host;
+ txtUsername.Text = loginData.username;
+
+ //
+ // Initialize values from previous page.
+ //
+ LoginPage previous = Coordinator.getInstance().getLoginPage();
+ if(previous != null)
+ {
+ txtHost.Text = previous.txtHost.Text;
+ txtUsername.Text = previous.txtUsername.Text;
+ txtPassword.Password = previous.txtPassword.Password;
+ txtError.Text = previous.txtError.Text;
+ }
+
+ if (String.IsNullOrEmpty(txtError.Text))
+ {
+ txtError.Visibility = System.Windows.Visibility.Collapsed;
+ }
+ else
+ {
+ txtError.Visibility = System.Windows.Visibility.Visible;
+ }
+ Coordinator.getInstance().setLoginPage(this);
+ }
+
+ string PageTitle { get{return "Login";} }
+
+ bool KeepAlive { get{return true;} }
+
+ bool CanNavigateAway { get{return true;} }
+
+ private void btnLoginClick(object sender, RoutedEventArgs e)
+ {
+ Coordinator.LoginData loginData = new Coordinator.LoginData();
+ loginData.username = txtUsername.Text;
+ loginData.password = txtPassword.Password;
+ loginData.host = txtHost.Text;
+ Coordinator.getInstance().doLogin(loginData);
+ }
+ }
+}
diff --git a/cs/demo/Glacier2/sl/chat/MainPage.xaml b/cs/demo/Glacier2/sl/chat/MainPage.xaml
new file mode 100644
index 00000000000..f2ade4f6330
--- /dev/null
+++ b/cs/demo/Glacier2/sl/chat/MainPage.xaml
@@ -0,0 +1,14 @@
+<navigation:Page x:Class="chat.MainPage"
+ xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
+ xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
+ xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
+ xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
+ mc:Ignorable="d"
+ xmlns:navigation="clr-namespace:System.Windows.Controls;assembly=System.Windows.Controls.Navigation"
+ d:DesignWidth="640" d:DesignHeight="480"
+ Title="MainPage Page">
+ <Grid x:Name="LayoutRoot">
+ <navigation:Frame
+ Source="/LoginPage.xaml" Name="mainFrame" Visibility="Visible" IsHitTestVisible="True" IsTabStop="True"/>
+ </Grid>
+</navigation:Page>
diff --git a/cs/demo/Glacier2/sl/chat/MainPage.xaml.cs b/cs/demo/Glacier2/sl/chat/MainPage.xaml.cs
new file mode 100644
index 00000000000..03cb064e118
--- /dev/null
+++ b/cs/demo/Glacier2/sl/chat/MainPage.xaml.cs
@@ -0,0 +1,100 @@
+// **********************************************************************
+//
+// Copyright (c) 2003-2011 ZeroC, Inc. All rights reserved.
+//
+// This copy of Ice is licensed to you under the terms described in the
+// ICE_LICENSE file included in this distribution.
+//
+// **********************************************************************
+
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Net;
+using System.Windows;
+using System.Windows.Controls;
+using System.Windows.Documents;
+using System.Windows.Input;
+using System.Windows.Media;
+using System.Windows.Media.Animation;
+using System.Windows.Shapes;
+using System.Windows.Navigation;
+
+namespace chat
+{
+ public partial class MainPage : Page
+ {
+ public MainPage()
+ {
+ InitializeComponent();
+ Coordinator.getInstance().setMainPage(this);
+ mainFrame.JournalOwnership = JournalOwnership.OwnsJournal;
+ }
+
+ public void setState(ClientState state)
+ {
+ _state = state;
+ string page = mainFrame.Source.OriginalString;
+ switch (state)
+ {
+ case ClientState.Connected:
+ {
+ page = "/ChatPage.xaml";
+ break;
+ }
+ case ClientState.Disconnected:
+ {
+ page = "/LoginPage.xaml";
+ break;
+ }
+ case ClientState.Disconnecting:
+ {
+ page = "/DisconnectingPage.xaml";
+ break;
+ }
+ case ClientState.Connecting:
+ {
+ LoginPage loginPage = Coordinator.getInstance().getLoginPage();
+ loginPage.txtError.Text = "";
+ page = "/ConnectingPage.xaml";
+ break;
+ }
+ case ClientState.ConnectionLost:
+ {
+ ChatPage chatPage = Coordinator.getInstance().getChatPage();
+ chatPage.status.Text = "Not Connected";
+ break;
+ }
+ default:
+ {
+ break;
+ }
+ }
+
+ if(!mainFrame.Source.OriginalString.Equals(page))
+ {
+ mainFrame.Source = new Uri(page, UriKind.Relative);
+ }
+ }
+
+ public void setError(string msg)
+ {
+ if (_state == ClientState.Disconnected)
+ {
+ LoginPage page = Coordinator.getInstance().getLoginPage();
+ page.txtError.Text = msg;
+ }
+ else
+ {
+ Coordinator.getInstance().getChatPage().appendMessage(msg);
+ }
+ }
+
+ public ClientState getState()
+ {
+ return _state;
+ }
+
+ private ClientState _state;
+ }
+}
diff --git a/cs/demo/Glacier2/sl/chat/Properties/AppManifest.xml b/cs/demo/Glacier2/sl/chat/Properties/AppManifest.xml
new file mode 100644
index 00000000000..a9552327529
--- /dev/null
+++ b/cs/demo/Glacier2/sl/chat/Properties/AppManifest.xml
@@ -0,0 +1,6 @@
+<Deployment xmlns="http://schemas.microsoft.com/client/2007/deployment"
+ xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
+>
+ <Deployment.Parts>
+ </Deployment.Parts>
+</Deployment>
diff --git a/cs/demo/Glacier2/sl/chat/Properties/AssemblyInfo.cs b/cs/demo/Glacier2/sl/chat/Properties/AssemblyInfo.cs
new file mode 100644
index 00000000000..19eae768e93
--- /dev/null
+++ b/cs/demo/Glacier2/sl/chat/Properties/AssemblyInfo.cs
@@ -0,0 +1,35 @@
+using System.Reflection;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+// General Information about an assembly is controlled through the following
+// set of attributes. Change these attribute values to modify the information
+// associated with an assembly.
+[assembly: AssemblyTitle("chat")]
+[assembly: AssemblyDescription("")]
+[assembly: AssemblyConfiguration("")]
+[assembly: AssemblyCompany("ZeroC")]
+[assembly: AssemblyProduct("chat")]
+[assembly: AssemblyCopyright("Copyright © ZeroC 2012")]
+[assembly: AssemblyTrademark("")]
+[assembly: AssemblyCulture("")]
+
+// Setting ComVisible to false makes the types in this assembly not visible
+// to COM components. If you need to access a type in this assembly from
+// COM, set the ComVisible attribute to true on that type.
+[assembly: ComVisible(false)]
+
+// The following GUID is for the ID of the typelib if this project is exposed to COM
+[assembly: Guid("fd4e649e-579d-4291-b5a4-0bebe34fe873")]
+
+// Version information for an assembly consists of the following four values:
+//
+// Major Version
+// Minor Version
+// Build Number
+// Revision
+//
+// You can specify all the values or you can default the Revision and Build Numbers
+// by using the '*' as shown below:
+[assembly: AssemblyVersion("1.0.0.0")]
+[assembly: AssemblyFileVersion("1.0.0.0")]
diff --git a/cs/demo/Glacier2/sl/chat/bin/AppManifest.xaml b/cs/demo/Glacier2/sl/chat/bin/AppManifest.xaml
new file mode 100644
index 00000000000..d7a4d47da75
--- /dev/null
+++ b/cs/demo/Glacier2/sl/chat/bin/AppManifest.xaml
@@ -0,0 +1,8 @@
+<Deployment xmlns="http://schemas.microsoft.com/client/2007/deployment" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" EntryPointAssembly="chat" EntryPointType="chat.App" RuntimeVersion="5.0.61118.0">
+ <Deployment.Parts>
+ <AssemblyPart x:Name="chat" Source="chat.dll" />
+ <AssemblyPart x:Name="Glacier2" Source="Glacier2.dll" />
+ <AssemblyPart x:Name="Ice" Source="Ice.dll" />
+ <AssemblyPart x:Name="System.Windows.Controls.Navigation" Source="System.Windows.Controls.Navigation.dll" />
+ </Deployment.Parts>
+</Deployment> \ No newline at end of file
diff --git a/cs/demo/Glacier2/sl/chat/bin/Glacier2.xml b/cs/demo/Glacier2/sl/chat/bin/Glacier2.xml
new file mode 100644
index 00000000000..a51ed60be7e
--- /dev/null
+++ b/cs/demo/Glacier2/sl/chat/bin/Glacier2.xml
@@ -0,0 +1,2110 @@
+<?xml version="1.0"?>
+<doc>
+ <assembly>
+ <name>Glacier2</name>
+ </assembly>
+ <members>
+ <member name="T:Glacier2.SessionFactoryHelper">
+ <summary>
+ A helper class for using Glacier2 with GUI applications.
+
+ Applications should create a session factory for each Glacier2 router to which the application will
+ connect. To connect with the Glacier2 router, call SessionFactory.connect. The callback object is
+ notified of the various life cycle events. Once the session is torn down for whatever reason, the
+ application can use the session factory to create another connection.
+ </summary>
+ </member>
+ <member name="M:Glacier2.SessionFactoryHelper.#ctor(Glacier2.SessionCallback)">
+ <summary>
+ Creates a SessionFactory object.
+ </summary>
+ <param name="callback">The callback object for notifications.</param>
+ </member>
+ <member name="M:Glacier2.SessionFactoryHelper.#ctor(Ice.InitializationData,Glacier2.SessionCallback)">
+ <summary>
+ Creates a SessionFactory object.
+ </summary>
+ <param name="initData">The initialization data to use when creating the communicator.</param>
+ <param name="callback">The callback object for notifications.</param>
+ </member>
+ <member name="M:Glacier2.SessionFactoryHelper.#ctor(Ice.Properties,Glacier2.SessionCallback)">
+ <summary>
+ Creates a SessionFactory object.
+ </summary>
+ <param name="properties">The properties to use when creating the communicator.</param>
+ <param name="callback">The callback object for notifications.</param>
+ </member>
+ <member name="M:Glacier2.SessionFactoryHelper.setRouterIdentity(Ice.Identity)">
+ <summary>
+ Set the router object identity.
+ </summary>
+ <param name="identity">The Glacier2 router's identity.</param>
+ </member>
+ <member name="M:Glacier2.SessionFactoryHelper.getRouterIdentity">
+ <summary>
+ Returns the object identity of the Glacier2 router.
+ </summary>
+ <returns> The Glacier2 router's identity.</returns>
+ </member>
+ <member name="M:Glacier2.SessionFactoryHelper.setRouterHost(System.String)">
+ <summary>
+ Sets the host on which the Glacier2 router runs.
+ </summary>
+ <param name="hostname">The host name (or IP address) of the router host.</param>
+ </member>
+ <member name="M:Glacier2.SessionFactoryHelper.getRouterHost">
+ <summary>
+ Returns the host on which the Glacier2 router runs.
+ </summary>
+ <returns>The Glacier2 router host.</returns>
+ </member>
+ <member name="M:Glacier2.SessionFactoryHelper.setSecure(System.Boolean)">
+ <summary>
+ Sets whether to connect with the Glacier2 router securely.
+ </summary>
+ <param name="secure">If true, the client connects to the router
+ via SSL; otherwise, the client connects via TCP.</param>
+ </member>
+ <member name="M:Glacier2.SessionFactoryHelper.getSecure">
+ <summary>
+ Returns whether the session factory will establish a secure connection to the Glacier2 router.
+ </summary>
+ <returns>The secure flag.</returns>
+ </member>
+ <member name="M:Glacier2.SessionFactoryHelper.setTimeout(System.Int32)">
+ <summary>
+ Sets the connect and connection timeout for the Glacier2 router.
+ </summary>
+ <param name="timeoutMillisecs">The timeout in milliseconds. A zero
+ or negative timeout value indicates that the router proxy has no
+ associated timeout.</param>
+ </member>
+ <member name="M:Glacier2.SessionFactoryHelper.getTimeout">
+ <summary>
+ Returns the connect and connection timeout associated with the Glacier2 router.
+ </summary>
+ <returns>The timeout.</returns>
+ </member>
+ <member name="M:Glacier2.SessionFactoryHelper.setPort(System.Int32)">
+ <summary>
+ Sets the Glacier2 router port to connect to.
+ </summary>
+ <param name="port">The port. If 0, then the default port (4063 for TCP or
+ 4064 for SSL) is used.</param>
+ </member>
+ <member name="M:Glacier2.SessionFactoryHelper.getPort">
+ <summary>
+ Returns the Glacier2 router port to connect to.
+ </summary>
+ <returns>The port.</returns>
+ </member>
+ <member name="M:Glacier2.SessionFactoryHelper.getInitializationData">
+ Returns the initialization data used to initialize the communicator.
+
+ @return The initialization data.
+ </member>
+ <member name="M:Glacier2.SessionFactoryHelper.setConnectContext(System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Sets the request context to use while establishing a connection to the Glacier2 router.
+ </summary>
+ <param name="context">The request context.</param>
+ </member>
+ <member name="M:Glacier2.SessionFactoryHelper.connect">
+ <summary>
+ Connects to the Glacier2 router using the associated SSL credentials.
+
+ Once the connection is established, SesssionCallback.connected is called on
+ the callback object; upon failure, SessionCallback.connectFailed is called
+ with the exception.
+ </summary>
+ <returns>The connected session.</returns>
+ </member>
+ <member name="M:Glacier2.SessionFactoryHelper.connect(System.String,System.String)">
+ <summary>
+ Connect the Glacier2 session using user name and password credentials.
+
+ Once the connection is established, SessionCallback.connected is called on
+ the callback object; upon failure, SessionCallback.connectFailed is called
+ with the exception.
+ </summary>
+ <param name="username">The user name.</param>
+ <param name="password">The password.</param>
+ <returns>The connected session.</returns>
+ </member>
+ <member name="T:Glacier2.SessionHelper">
+ <summary>
+ A helper class for using Glacier2 with GUI applications.
+ </summary>
+ </member>
+ <member name="M:Glacier2.SessionHelper.#ctor(Glacier2.SessionCallback,Ice.InitializationData)">
+ <summary>
+ Creates a Glacier2 session.
+ </summary>
+ <param name="callback">The callback for notifications about session
+ establishment.</param>
+ <param name="initData">The Ice.InitializationData for initializing
+ the communicator.</param>
+ </member>
+ <member name="M:Glacier2.SessionHelper.destroy">
+ <summary>
+ Destroys the Glacier2 session.
+
+ Once the session has been destroyed, SessionCallback.disconnected is
+ called on the associated callback object.
+ </summary>
+ </member>
+ <member name="M:Glacier2.SessionHelper.communicator">
+ <summary>
+ Returns the session's communicator object.
+ </summary>
+ <returns>The communicator.</returns>
+ </member>
+ <member name="M:Glacier2.SessionHelper.categoryForClient">
+ <summary>
+ Returns the category to be used in the identities of all of
+ the client's callback objects. Clients must use this category
+ for the router to forward callback requests to the intended
+ client.
+ </summary>
+ <returns>The category. Throws SessionNotExistException
+ No session exists</returns>
+ </member>
+ <member name="M:Glacier2.SessionHelper.addWithUUID(Ice.Object)">
+ <summary>
+ Adds a servant to the callback object adapter's Active Servant
+ Map with a UUID.
+ </summary>
+ <param name="servant">The servant to add.</param>
+ <returns>The proxy for the servant. Throws SessionNotExistException
+ if no session exists.</returns>
+ </member>
+ <member name="M:Glacier2.SessionHelper.session">
+ <summary>
+ Returns the Glacier2 session proxy. If the session hasn't been
+ established yet, or the session has already been destroyed,
+ throws SessionNotExistException.
+ </summary>
+ <returns>The session proxy, or throws SessionNotExistException
+ if no session exists.</returns>
+ </member>
+ <member name="M:Glacier2.SessionHelper.isConnected">
+ <summary>
+ Returns true if there is an active session, otherwise returns false.
+ </summary>
+ <returns>true if session exists or false if no session exists.</returns>
+ </member>
+ <member name="M:Glacier2.SessionHelper.objectAdapter">
+ <summary>
+ Returns an object adapter for callback objects, creating it if necessary.
+ </summary>
+ <return>The object adapter. throws SessionNotExistException
+ if no session exists.</return>
+ </member>
+ <member name="M:Glacier2.SessionHelper.connect(System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Connects to the Glacier2 router using the associated SSL credentials.
+
+ Once the connection is established, SessionCallback.connected is called on
+ the callback object; upon failure, SessionCallback.exception is called with
+ the exception.
+ </summary>
+ <param name="context">The request context to use when creating the session.</param>
+ </member>
+ <member name="M:Glacier2.SessionHelper.connect(System.String,System.String,System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Connects a Glacier2 session using user name and password credentials.
+
+ Once the connection is established, SessionCallback.connected is called on the callback object;
+ upon failure SessionCallback.exception is called with the exception.
+ </summary>
+ <param name="username">The user name.</param>
+ <param name="password">The password.</param>
+ <param name="context">The request context to use when creating the session.</param>
+ </member>
+ <member name="T:Glacier2.AMI_Router_refreshSession">
+ <summary>
+ Keep the calling client's session with this router alive.
+ </summary>
+ </member>
+ <member name="M:Glacier2.AMI_Router_refreshSession.ice_response">
+ <summary>
+ ice_response indicates that
+ the operation completed successfully.
+ </summary>
+ </member>
+ <member name="T:Glacier2.SessionCallback">
+ <summary>
+ A callback class to get notifications of status changes in the
+ Glacier2 session. All callbacks on the SessionCallback interface
+ occur in the main swing thread.
+ </summary>
+ </member>
+ <member name="M:Glacier2.SessionCallback.createdCommunicator(Glacier2.SessionHelper)">
+ <summary>
+ Notifies the application that the communicator was created.
+ </summary>
+ <param name="session">The Glacier2 session.</param>
+ </member>
+ <member name="M:Glacier2.SessionCallback.connected(Glacier2.SessionHelper)">
+ <summary>
+ Notifies the application that the Glacier2 session has
+ been established.
+ </summary>
+ <param name="session">The established session.</param>
+ </member>
+ <member name="M:Glacier2.SessionCallback.disconnected(Glacier2.SessionHelper)">
+ <summary>
+ Notifies the application that the Glacier2 session has been
+ disconnected.
+ </summary>
+ <param name="session">The disconnected session.</param>
+ </member>
+ <member name="M:Glacier2.SessionCallback.connectFailed(Glacier2.SessionHelper,System.Exception)">
+ <summary>
+ Notifies the application that the Glacier2 session
+ establishment failed.
+ </summary>
+ <param name="session">The session reporting the connection
+ failure.</param>
+ <param name="ex">The exception.</param>
+ </member>
+ <member name="T:Glacier2.PermissionsVerifierOperations_">
+ <summary>
+ The Glacier2 permissions verifier.
+ This is called through the
+ process of establishing a session.
+
+ </summary>
+ </member>
+ <member name="M:Glacier2.PermissionsVerifierOperations_.checkPermissions(System.String,System.String,System.String@,Ice.Current)">
+ <summary>
+ Check whether a user has permission to access the router.
+ </summary>
+ <param name="userId">The user id for which to check permission.
+
+ </param>
+ <param name="password">The user's password.
+
+ </param>
+ <param name="reason">The reason why access was denied.
+
+ </param>
+ <returns>True if access is granted, or false otherwise.</returns>
+ <param name="current__">The Current object for the invocation.</param>
+ </member>
+ <member name="T:Glacier2.PermissionsVerifierOperationsNC_">
+ <summary>
+ The Glacier2 permissions verifier.
+ This is called through the
+ process of establishing a session.
+
+ </summary>
+ </member>
+ <member name="M:Glacier2.PermissionsVerifierOperationsNC_.checkPermissions(System.String,System.String,System.String@)">
+ <summary>
+ Check whether a user has permission to access the router.
+ </summary>
+ <param name="userId">The user id for which to check permission.
+
+ </param>
+ <param name="password">The user's password.
+
+ </param>
+ <param name="reason">The reason why access was denied.
+
+ </param>
+ <returns>True if access is granted, or false otherwise.</returns>
+ </member>
+ <member name="T:Glacier2.SSLPermissionsVerifierOperations_">
+ <summary>
+ The SSL Glacier2 permissions verifier.
+ This is called through the
+ process of establishing a session.
+
+ </summary>
+ </member>
+ <member name="M:Glacier2.SSLPermissionsVerifierOperations_.authorize(Glacier2.SSLInfo,System.String@,Ice.Current)">
+ <summary>
+ Check whether a user has permission to access the router.
+ </summary>
+ <param name="info">The SSL information.
+
+ </param>
+ <param name="reason">The reason why access was denied.
+
+ </param>
+ <returns>True if access is granted, or false otherwise.
+
+ </returns>
+ <param name="current__">The Current object for the invocation.</param>
+ </member>
+ <member name="T:Glacier2.SSLPermissionsVerifierOperationsNC_">
+ <summary>
+ The SSL Glacier2 permissions verifier.
+ This is called through the
+ process of establishing a session.
+
+ </summary>
+ </member>
+ <member name="M:Glacier2.SSLPermissionsVerifierOperationsNC_.authorize(Glacier2.SSLInfo,System.String@)">
+ <summary>
+ Check whether a user has permission to access the router.
+ </summary>
+ <param name="info">The SSL information.
+
+ </param>
+ <param name="reason">The reason why access was denied.
+
+ </param>
+ <returns>True if access is granted, or false otherwise.
+
+ </returns>
+ </member>
+ <member name="T:Glacier2.PermissionsVerifierPrxHelper">
+ <summary>
+ The Glacier2 permissions verifier.
+ This is called through the
+ process of establishing a session.
+
+ </summary>
+ </member>
+ <member name="M:Glacier2.PermissionsVerifierPrxHelper.checkPermissions(System.String,System.String,System.String@)">
+ <summary>
+ Check whether a user has permission to access the router.
+ </summary>
+ <param name="userId">The user id for which to check permission.
+
+ </param>
+ <param name="password">The user's password.
+
+ </param>
+ <param name="reason">The reason why access was denied.
+
+ </param>
+ <returns>True if access is granted, or false otherwise.</returns>
+ </member>
+ <member name="M:Glacier2.PermissionsVerifierPrxHelper.checkPermissions(System.String,System.String,System.String@,System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Check whether a user has permission to access the router.
+ </summary>
+ <param name="userId">The user id for which to check permission.
+
+ </param>
+ <param name="password">The user's password.
+
+ </param>
+ <param name="reason">The reason why access was denied.
+
+ </param>
+ <returns>True if access is granted, or false otherwise.</returns>
+ <param name="context__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="M:Glacier2.PermissionsVerifierPrxHelper.begin_checkPermissions(System.String,System.String,System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Check whether a user has permission to access the router.
+ </summary>
+ <param name="userId">The user id for which to check permission.
+
+ </param>
+ <param name="password">The user's password.
+
+ </param>
+ <param name="ctx__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="M:Glacier2.PermissionsVerifierPrxHelper.checkPermissions_async(Glacier2.AMI_PermissionsVerifier_checkPermissions,System.String,System.String)">
+ <summary>
+ Check whether a user has permission to access the router.
+ </summary>
+ <param name="cb__">The callback object for the operation.</param>
+ <param name="userId">The user id for which to check permission.
+
+ </param>
+ <param name="password">The user's password.
+
+ </param>
+ </member>
+ <member name="M:Glacier2.PermissionsVerifierPrxHelper.checkPermissions_async(Glacier2.AMI_PermissionsVerifier_checkPermissions,System.String,System.String,System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Check whether a user has permission to access the router.
+ </summary>
+ <param name="cb__">The callback object for the operation.</param>
+ <param name="userId">The user id for which to check permission.
+
+ </param>
+ <param name="password">The user's password.
+
+ </param>
+ <param name="ctx__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="T:Glacier2.SSLPermissionsVerifierPrxHelper">
+ <summary>
+ The SSL Glacier2 permissions verifier.
+ This is called through the
+ process of establishing a session.
+
+ </summary>
+ </member>
+ <member name="M:Glacier2.SSLPermissionsVerifierPrxHelper.authorize(Glacier2.SSLInfo,System.String@)">
+ <summary>
+ Check whether a user has permission to access the router.
+ </summary>
+ <param name="info">The SSL information.
+
+ </param>
+ <param name="reason">The reason why access was denied.
+
+ </param>
+ <returns>True if access is granted, or false otherwise.
+
+ </returns>
+ </member>
+ <member name="M:Glacier2.SSLPermissionsVerifierPrxHelper.authorize(Glacier2.SSLInfo,System.String@,System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Check whether a user has permission to access the router.
+ </summary>
+ <param name="info">The SSL information.
+
+ </param>
+ <param name="reason">The reason why access was denied.
+
+ </param>
+ <returns>True if access is granted, or false otherwise.
+
+ </returns>
+ <param name="context__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="M:Glacier2.SSLPermissionsVerifierPrxHelper.begin_authorize(Glacier2.SSLInfo,System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Check whether a user has permission to access the router.
+ </summary>
+ <param name="info">The SSL information.
+
+ </param>
+ <param name="ctx__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="M:Glacier2.SSLPermissionsVerifierPrxHelper.authorize_async(Glacier2.AMI_SSLPermissionsVerifier_authorize,Glacier2.SSLInfo)">
+ <summary>
+ Check whether a user has permission to access the router.
+ </summary>
+ <param name="cb__">The callback object for the operation.</param>
+ <param name="info">The SSL information.
+
+ </param>
+ </member>
+ <member name="M:Glacier2.SSLPermissionsVerifierPrxHelper.authorize_async(Glacier2.AMI_SSLPermissionsVerifier_authorize,Glacier2.SSLInfo,System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Check whether a user has permission to access the router.
+ </summary>
+ <param name="cb__">The callback object for the operation.</param>
+ <param name="info">The SSL information.
+
+ </param>
+ <param name="ctx__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="T:Glacier2.AMI_PermissionsVerifier_checkPermissions">
+ <summary>
+ Check whether a user has permission to access the router.
+ </summary>
+ </member>
+ <member name="M:Glacier2.AMI_PermissionsVerifier_checkPermissions.ice_response(System.Boolean,System.String)">
+ <summary>
+ ice_response indicates that
+ the operation completed successfully.
+ </summary>
+ <param name="ret__">(return value) True if access is granted, or false otherwise.</param>
+ <param name="reason">The reason why access was denied.
+
+ </param>
+ </member>
+ <member name="T:Glacier2.AMI_SSLPermissionsVerifier_authorize">
+ <summary>
+ Check whether a user has permission to access the router.
+ </summary>
+ </member>
+ <member name="M:Glacier2.AMI_SSLPermissionsVerifier_authorize.ice_response(System.Boolean,System.String)">
+ <summary>
+ ice_response indicates that
+ the operation completed successfully.
+ </summary>
+ <param name="ret__">(return value) True if access is granted, or false otherwise.
+
+ </param>
+ <param name="reason">The reason why access was denied.
+
+ </param>
+ </member>
+ <member name="T:Glacier2.PermissionDeniedException">
+ <summary>
+ This exception is raised if a client is denied the ability to create
+ a session with the router.
+ </summary>
+ </member>
+ <member name="T:Glacier2.SessionNotExistException">
+ <summary>
+ This exception is raised if a client tries to destroy a session
+ with a router, but no session exists for the client.
+ </summary>
+ </member>
+ <member name="T:Glacier2.RouterOperations_">
+ <summary>
+ The Glacier2 specialization of the Ice.Router
+ interface.
+ </summary>
+ </member>
+ <member name="M:Glacier2.RouterOperations_.getCategoryForClient(Ice.Current)">
+ <summary>
+ This category must be used in the identities of all of the client's
+ callback objects.
+ This is necessary in order for the router to
+ forward callback requests to the intended client. If the Glacier2
+ server endpoints are not set, the returned category is an empty
+ string.
+
+ </summary>
+ <returns>The category.</returns>
+ <param name="current__">The Current object for the invocation.</param>
+ </member>
+ <member name="M:Glacier2.RouterOperations_.createSession_async(Glacier2.AMD_Router_createSession,System.String,System.String,Ice.Current)">
+ <summary>
+ Create a per-client session with the router.
+ If a
+ </summary>
+ <param name="cb__">The callback object for the operation.</param>
+ <param name="userId">The user id for which to check the password.
+
+ </param>
+ <param name="password">The password for the given user id.
+
+ </param>
+ <param name="current__">The Current object for the invocation.</param>
+ </member>
+ <member name="M:Glacier2.RouterOperations_.createSessionFromSecureConnection_async(Glacier2.AMD_Router_createSessionFromSecureConnection,Ice.Current)">
+ <summary>
+ Create a per-client session with the router.
+ The user is
+ </summary>
+ <param name="cb__">The callback object for the operation.</param>
+ <param name="current__">The Current object for the invocation.</param>
+ </member>
+ <member name="M:Glacier2.RouterOperations_.refreshSession(Ice.Current)">
+ <summary>
+ Keep the calling client's session with this router alive.
+ </summary>
+ <exception name="SessionNotExistException">Raised if no session exists
+ for the calling client.</exception>
+ <param name="current__">The Current object for the invocation.</param>
+ </member>
+ <member name="M:Glacier2.RouterOperations_.destroySession(Ice.Current)">
+ <summary>
+ Destroy the calling client's session with this router.
+ </summary>
+ <exception name="SessionNotExistException">Raised if no session exists
+ for the calling client.</exception>
+ <param name="current__">The Current object for the invocation.</param>
+ </member>
+ <member name="M:Glacier2.RouterOperations_.getSessionTimeout(Ice.Current)">
+ <summary>
+ Get the value of the session timeout.
+ Sessions are destroyed
+ if they see no activity for this period of time.
+
+ </summary>
+ <returns>The timeout (in seconds).</returns>
+ <param name="current__">The Current object for the invocation.</param>
+ </member>
+ <member name="T:Glacier2.RouterOperationsNC_">
+ <summary>
+ The Glacier2 specialization of the Ice.Router
+ interface.
+ </summary>
+ </member>
+ <member name="M:Glacier2.RouterOperationsNC_.getCategoryForClient">
+ <summary>
+ This category must be used in the identities of all of the client's
+ callback objects.
+ This is necessary in order for the router to
+ forward callback requests to the intended client. If the Glacier2
+ server endpoints are not set, the returned category is an empty
+ string.
+
+ </summary>
+ <returns>The category.</returns>
+ </member>
+ <member name="M:Glacier2.RouterOperationsNC_.createSession_async(Glacier2.AMD_Router_createSession,System.String,System.String)">
+ <summary>
+ Create a per-client session with the router.
+ If a
+ </summary>
+ <param name="cb__">The callback object for the operation.</param>
+ <param name="userId">The user id for which to check the password.
+
+ </param>
+ <param name="password">The password for the given user id.
+
+ </param>
+ </member>
+ <member name="M:Glacier2.RouterOperationsNC_.createSessionFromSecureConnection_async(Glacier2.AMD_Router_createSessionFromSecureConnection)">
+ <summary>
+ Create a per-client session with the router.
+ The user is
+ </summary>
+ <param name="cb__">The callback object for the operation.</param>
+ </member>
+ <member name="M:Glacier2.RouterOperationsNC_.refreshSession">
+ <summary>
+ Keep the calling client's session with this router alive.
+ </summary>
+ <exception name="SessionNotExistException">Raised if no session exists
+ for the calling client.</exception>
+ </member>
+ <member name="M:Glacier2.RouterOperationsNC_.destroySession">
+ <summary>
+ Destroy the calling client's session with this router.
+ </summary>
+ <exception name="SessionNotExistException">Raised if no session exists
+ for the calling client.</exception>
+ </member>
+ <member name="M:Glacier2.RouterOperationsNC_.getSessionTimeout">
+ <summary>
+ Get the value of the session timeout.
+ Sessions are destroyed
+ if they see no activity for this period of time.
+
+ </summary>
+ <returns>The timeout (in seconds).</returns>
+ </member>
+ <member name="T:Glacier2.AdminOperations_">
+ <summary>
+ The Glacier2 administrative interface.
+ This must only be
+ accessible from inside the firewall.
+ </summary>
+ </member>
+ <member name="M:Glacier2.AdminOperations_.shutdown(Ice.Current)">
+ <summary>
+ Shut down the Glacier2 router.
+ </summary>
+ <param name="current__">The Current object for the invocation.</param>
+ </member>
+ <member name="T:Glacier2.AdminOperationsNC_">
+ <summary>
+ The Glacier2 administrative interface.
+ This must only be
+ accessible from inside the firewall.
+ </summary>
+ </member>
+ <member name="M:Glacier2.AdminOperationsNC_.shutdown">
+ <summary>
+ Shut down the Glacier2 router.
+ </summary>
+ </member>
+ <member name="T:Glacier2.RouterPrxHelper">
+ <summary>
+ The Glacier2 specialization of the Ice.Router
+ interface.
+ </summary>
+ </member>
+ <member name="M:Glacier2.RouterPrxHelper.createSession(System.String,System.String)">
+ <summary>
+ Create a per-client session with the router.
+ If a
+ SessionManager has been installed, a proxy to a Session
+ object is returned to the client. Otherwise, null is returned
+ and only an internal session (i.e., not visible to the client)
+ is created.
+
+ If a session proxy is returned, it must be configured to route
+ through the router that created it. This will happen automatically
+ if the router is configured as the client's default router at the
+ time the session proxy is created in the client process, otherwise
+ the client must configure the session proxy explicitly.
+
+ </summary>
+ <returns>A proxy for the newly created session, or null if no
+ SessionManager has been installed.
+
+ </returns>
+ <param name="userId">The user id for which to check the password.
+
+ </param>
+ <param name="password">The password for the given user id.
+
+ </param>
+ <exception name="PermissionDeniedException">Raised if the password for
+ the given user id is not correct, or if the user is not allowed
+ access.
+
+ </exception>
+ <exception name="CannotCreateSessionException">Raised if the session
+ cannot be created.</exception>
+ </member>
+ <member name="M:Glacier2.RouterPrxHelper.createSession(System.String,System.String,System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Create a per-client session with the router.
+ If a
+ SessionManager has been installed, a proxy to a Session
+ object is returned to the client. Otherwise, null is returned
+ and only an internal session (i.e., not visible to the client)
+ is created.
+
+ If a session proxy is returned, it must be configured to route
+ through the router that created it. This will happen automatically
+ if the router is configured as the client's default router at the
+ time the session proxy is created in the client process, otherwise
+ the client must configure the session proxy explicitly.
+
+ </summary>
+ <returns>A proxy for the newly created session, or null if no
+ SessionManager has been installed.
+
+ </returns>
+ <param name="userId">The user id for which to check the password.
+
+ </param>
+ <param name="password">The password for the given user id.
+
+ </param>
+ <exception name="PermissionDeniedException">Raised if the password for
+ the given user id is not correct, or if the user is not allowed
+ access.
+
+ </exception>
+ <exception name="CannotCreateSessionException">Raised if the session
+ cannot be created.</exception>
+ <param name="context__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="M:Glacier2.RouterPrxHelper.createSessionFromSecureConnection">
+ <summary>
+ Create a per-client session with the router.
+ The user is
+ authenticated through the SSL certificates that have been
+ associated with the connection. If a SessionManager has been
+ installed, a proxy to a Session object is returned to the
+ client. Otherwise, null is returned and only an internal
+ session (i.e., not visible to the client) is created.
+
+ If a session proxy is returned, it must be configured to route
+ through the router that created it. This will happen automatically
+ if the router is configured as the client's default router at the
+ time the session proxy is created in the client process, otherwise
+ the client must configure the session proxy explicitly.
+
+ </summary>
+ <returns>A proxy for the newly created session, or null if no
+ SessionManager has been installed.
+
+ </returns>
+ <exception name="PermissionDeniedException">Raised if the user cannot be
+ authenticated or if the user is not allowed access.
+
+ </exception>
+ <exception name="CannotCreateSessionException">Raised if the session
+ cannot be created.</exception>
+ </member>
+ <member name="M:Glacier2.RouterPrxHelper.createSessionFromSecureConnection(System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Create a per-client session with the router.
+ The user is
+ authenticated through the SSL certificates that have been
+ associated with the connection. If a SessionManager has been
+ installed, a proxy to a Session object is returned to the
+ client. Otherwise, null is returned and only an internal
+ session (i.e., not visible to the client) is created.
+
+ If a session proxy is returned, it must be configured to route
+ through the router that created it. This will happen automatically
+ if the router is configured as the client's default router at the
+ time the session proxy is created in the client process, otherwise
+ the client must configure the session proxy explicitly.
+
+ </summary>
+ <returns>A proxy for the newly created session, or null if no
+ SessionManager has been installed.
+
+ </returns>
+ <exception name="PermissionDeniedException">Raised if the user cannot be
+ authenticated or if the user is not allowed access.
+
+ </exception>
+ <exception name="CannotCreateSessionException">Raised if the session
+ cannot be created.</exception>
+ <param name="context__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="M:Glacier2.RouterPrxHelper.destroySession">
+ <summary>
+ Destroy the calling client's session with this router.
+ </summary>
+ <exception name="SessionNotExistException">Raised if no session exists
+ for the calling client.</exception>
+ </member>
+ <member name="M:Glacier2.RouterPrxHelper.destroySession(System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Destroy the calling client's session with this router.
+ </summary>
+ <exception name="SessionNotExistException">Raised if no session exists
+ for the calling client.</exception>
+ <param name="context__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="M:Glacier2.RouterPrxHelper.getCategoryForClient">
+ <summary>
+ This category must be used in the identities of all of the client's
+ callback objects.
+ This is necessary in order for the router to
+ forward callback requests to the intended client. If the Glacier2
+ server endpoints are not set, the returned category is an empty
+ string.
+
+ </summary>
+ <returns>The category.</returns>
+ </member>
+ <member name="M:Glacier2.RouterPrxHelper.getCategoryForClient(System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ This category must be used in the identities of all of the client's
+ callback objects.
+ This is necessary in order for the router to
+ forward callback requests to the intended client. If the Glacier2
+ server endpoints are not set, the returned category is an empty
+ string.
+
+ </summary>
+ <returns>The category.</returns>
+ <param name="context__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="M:Glacier2.RouterPrxHelper.getSessionTimeout">
+ <summary>
+ Get the value of the session timeout.
+ Sessions are destroyed
+ if they see no activity for this period of time.
+
+ </summary>
+ <returns>The timeout (in seconds).</returns>
+ </member>
+ <member name="M:Glacier2.RouterPrxHelper.getSessionTimeout(System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Get the value of the session timeout.
+ Sessions are destroyed
+ if they see no activity for this period of time.
+
+ </summary>
+ <returns>The timeout (in seconds).</returns>
+ <param name="context__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="M:Glacier2.RouterPrxHelper.refreshSession">
+ <summary>
+ Keep the calling client's session with this router alive.
+ </summary>
+ <exception name="SessionNotExistException">Raised if no session exists
+ for the calling client.</exception>
+ </member>
+ <member name="M:Glacier2.RouterPrxHelper.refreshSession(System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Keep the calling client's session with this router alive.
+ </summary>
+ <exception name="SessionNotExistException">Raised if no session exists
+ for the calling client.</exception>
+ <param name="context__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="M:Glacier2.RouterPrxHelper.addProxies(Ice.ObjectPrx[])">
+ <summary>
+ Add new proxy information to the router's routing table.
+ </summary>
+ <param name="proxies">The proxies to add.
+
+ </param>
+ <returns>Proxies discarded by the router.</returns>
+ </member>
+ <member name="M:Glacier2.RouterPrxHelper.addProxies(Ice.ObjectPrx[],System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Add new proxy information to the router's routing table.
+ </summary>
+ <param name="proxies">The proxies to add.
+
+ </param>
+ <returns>Proxies discarded by the router.</returns>
+ <param name="context__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="M:Glacier2.RouterPrxHelper.addProxy(Ice.ObjectPrx)">
+ <summary>
+ Add new proxy information to the router's routing table.
+
+ <para>addProxy() is deprecated, use addProxies() instead.</para>
+
+ This operation is deprecated, and only used for old
+ Ice clients (older than version 3.1).
+
+ </summary>
+ <param name="proxy">The proxy to add.</param>
+ </member>
+ <member name="M:Glacier2.RouterPrxHelper.addProxy(Ice.ObjectPrx,System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Add new proxy information to the router's routing table.
+
+ <para>addProxy() is deprecated, use addProxies() instead.</para>
+
+ This operation is deprecated, and only used for old
+ Ice clients (older than version 3.1).
+
+ </summary>
+ <param name="proxy">The proxy to add.</param>
+ <param name="context__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="M:Glacier2.RouterPrxHelper.getClientProxy">
+ <summary>
+ Get the router's client proxy, i.e., the proxy to use for
+ forwarding requests from the client to the router.
+ </summary>
+ <returns>The router's client proxy.</returns>
+ </member>
+ <member name="M:Glacier2.RouterPrxHelper.getClientProxy(System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Get the router's client proxy, i.e., the proxy to use for
+ forwarding requests from the client to the router.
+ </summary>
+ <returns>The router's client proxy.</returns>
+ <param name="context__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="M:Glacier2.RouterPrxHelper.getServerProxy">
+ <summary>
+ Get the router's server proxy, i.e., the proxy to use for
+ forwarding requests from the server to the router.
+ </summary>
+ <returns>The router's server proxy.</returns>
+ </member>
+ <member name="M:Glacier2.RouterPrxHelper.getServerProxy(System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Get the router's server proxy, i.e., the proxy to use for
+ forwarding requests from the server to the router.
+ </summary>
+ <returns>The router's server proxy.</returns>
+ <param name="context__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="M:Glacier2.RouterPrxHelper.begin_createSession(System.String,System.String,System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Create a per-client session with the router.
+ If a
+ </summary>
+ <param name="userId">The user id for which to check the password.
+
+ </param>
+ <param name="password">The password for the given user id.
+
+ </param>
+ <param name="ctx__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="M:Glacier2.RouterPrxHelper.begin_createSessionFromSecureConnection(System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Create a per-client session with the router.
+ The user is
+ </summary>
+ <param name="ctx__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="M:Glacier2.RouterPrxHelper.begin_destroySession(System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Destroy the calling client's session with this router.
+ </summary>
+ <param name="ctx__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="M:Glacier2.RouterPrxHelper.destroySession_async(Glacier2.AMI_Router_destroySession)">
+ <summary>
+ Destroy the calling client's session with this router.
+ </summary>
+ <param name="cb__">The callback object for the operation.</param>
+ </member>
+ <member name="M:Glacier2.RouterPrxHelper.destroySession_async(Glacier2.AMI_Router_destroySession,System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Destroy the calling client's session with this router.
+ </summary>
+ <param name="cb__">The callback object for the operation.</param>
+ <param name="ctx__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="M:Glacier2.RouterPrxHelper.begin_getCategoryForClient(System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ This category must be used in the identities of all of the client's
+ callback objects.
+ This is necessary in order for the router to
+ </summary>
+ <param name="ctx__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="M:Glacier2.RouterPrxHelper.begin_getSessionTimeout(System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Get the value of the session timeout.
+ Sessions are destroyed
+ </summary>
+ <param name="ctx__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="M:Glacier2.RouterPrxHelper.begin_refreshSession(System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Keep the calling client's session with this router alive.
+ </summary>
+ <param name="ctx__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="M:Glacier2.RouterPrxHelper.refreshSession_async(Glacier2.AMI_Router_refreshSession)">
+ <summary>
+ Keep the calling client's session with this router alive.
+ </summary>
+ <param name="cb__">The callback object for the operation.</param>
+ </member>
+ <member name="M:Glacier2.RouterPrxHelper.refreshSession_async(Glacier2.AMI_Router_refreshSession,System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Keep the calling client's session with this router alive.
+ </summary>
+ <param name="cb__">The callback object for the operation.</param>
+ <param name="ctx__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="M:Glacier2.RouterPrxHelper.begin_addProxies(Ice.ObjectPrx[],System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Add new proxy information to the router's routing table.
+ </summary>
+ <param name="proxies">The proxies to add.
+
+ </param>
+ <param name="ctx__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="M:Glacier2.RouterPrxHelper.addProxies_async(Ice.AMI_Router_addProxies,Ice.ObjectPrx[])">
+ <summary>
+ Add new proxy information to the router's routing table.
+ </summary>
+ <param name="cb__">The callback object for the operation.</param>
+ <param name="proxies">The proxies to add.
+
+ </param>
+ </member>
+ <member name="M:Glacier2.RouterPrxHelper.addProxies_async(Ice.AMI_Router_addProxies,Ice.ObjectPrx[],System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Add new proxy information to the router's routing table.
+ </summary>
+ <param name="cb__">The callback object for the operation.</param>
+ <param name="proxies">The proxies to add.
+
+ </param>
+ <param name="ctx__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="M:Glacier2.RouterPrxHelper.begin_addProxy(Ice.ObjectPrx,System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Add new proxy information to the router's routing table.
+ This operation is deprecated, and only used for old
+ </summary>
+ <param name="proxy">The proxy to add.</param>
+ <param name="ctx__">The Context map to send with the invocation.</param>
+ <para>addProxy() is deprecated, use addProxies() instead.</para>
+ </member>
+ <member name="M:Glacier2.RouterPrxHelper.begin_getClientProxy(System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Get the router's client proxy, i.e., the proxy to use for
+ forwarding requests from the client to the router.
+ </summary>
+ <param name="ctx__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="M:Glacier2.RouterPrxHelper.getClientProxy_async(Ice.AMI_Router_getClientProxy)">
+ <summary>
+ Get the router's client proxy, i.e., the proxy to use for
+ forwarding requests from the client to the router.
+ </summary>
+ <param name="cb__">The callback object for the operation.</param>
+ </member>
+ <member name="M:Glacier2.RouterPrxHelper.getClientProxy_async(Ice.AMI_Router_getClientProxy,System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Get the router's client proxy, i.e., the proxy to use for
+ forwarding requests from the client to the router.
+ </summary>
+ <param name="cb__">The callback object for the operation.</param>
+ <param name="ctx__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="M:Glacier2.RouterPrxHelper.begin_getServerProxy(System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Get the router's server proxy, i.e., the proxy to use for
+ forwarding requests from the server to the router.
+ </summary>
+ <param name="ctx__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="T:Glacier2.AdminPrxHelper">
+ <summary>
+ The Glacier2 administrative interface.
+ This must only be
+ accessible from inside the firewall.
+ </summary>
+ </member>
+ <member name="M:Glacier2.AdminPrxHelper.shutdown">
+ <summary>
+ Shut down the Glacier2 router.
+ </summary>
+ </member>
+ <member name="M:Glacier2.AdminPrxHelper.shutdown(System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Shut down the Glacier2 router.
+ </summary>
+ <param name="context__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="M:Glacier2.AdminPrxHelper.begin_shutdown(System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Shut down the Glacier2 router.
+ </summary>
+ <param name="ctx__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="T:Glacier2.AMD_Router_createSession">
+ <summary>
+ Create a per-client session with the router.
+ If a
+ SessionManager has been installed, a proxy to a Session
+ object is returned to the client. Otherwise, null is returned
+ and only an internal session (i.e., not visible to the client)
+ is created.
+
+ If a session proxy is returned, it must be configured to route
+ through the router that created it. This will happen automatically
+ if the router is configured as the client's default router at the
+ time the session proxy is created in the client process, otherwise
+ the client must configure the session proxy explicitly.
+
+ </summary>
+ </member>
+ <member name="M:Glacier2.AMD_Router_createSession.ice_response(Glacier2.SessionPrx)">
+ <summary>
+ ice_response indicates that
+ the operation completed successfully.
+ </summary>
+ <param name="ret__">(return value) A proxy for the newly created session, or null if no
+ SessionManager has been installed.
+
+ </param>
+ </member>
+ <member name="T:Glacier2.AMD_Router_createSessionFromSecureConnection">
+ <summary>
+ Create a per-client session with the router.
+ The user is
+ authenticated through the SSL certificates that have been
+ associated with the connection. If a SessionManager has been
+ installed, a proxy to a Session object is returned to the
+ client. Otherwise, null is returned and only an internal
+ session (i.e., not visible to the client) is created.
+
+ If a session proxy is returned, it must be configured to route
+ through the router that created it. This will happen automatically
+ if the router is configured as the client's default router at the
+ time the session proxy is created in the client process, otherwise
+ the client must configure the session proxy explicitly.
+
+ </summary>
+ </member>
+ <member name="M:Glacier2.AMD_Router_createSessionFromSecureConnection.ice_response(Glacier2.SessionPrx)">
+ <summary>
+ ice_response indicates that
+ the operation completed successfully.
+ </summary>
+ <param name="ret__">(return value) A proxy for the newly created session, or null if no
+ SessionManager has been installed.
+
+ </param>
+ </member>
+ <member name="T:Glacier2.AMI_Router_destroySession">
+ <summary>
+ Destroy the calling client's session with this router.
+ </summary>
+ </member>
+ <member name="M:Glacier2.AMI_Router_destroySession.ice_response">
+ <summary>
+ ice_response indicates that
+ the operation completed successfully.
+ </summary>
+ </member>
+ <member name="T:Glacier2.CannotCreateSessionException">
+ <summary>
+ This exception is raised if an attempt to create a new session
+ failed.
+ </summary>
+ </member>
+ <member name="T:Glacier2.SessionOperations_">
+ <summary>
+ A client-visible session object, which is tied to the lifecycle of
+ a Router.
+ </summary>
+ </member>
+ <member name="M:Glacier2.SessionOperations_.destroy(Ice.Current)">
+ <summary>
+ Destroy the session.
+ This is called automatically when the
+ Router is destroyed.
+ </summary>
+ <param name="current__">The Current object for the invocation.</param>
+ </member>
+ <member name="T:Glacier2.SessionOperationsNC_">
+ <summary>
+ A client-visible session object, which is tied to the lifecycle of
+ a Router.
+ </summary>
+ </member>
+ <member name="M:Glacier2.SessionOperationsNC_.destroy">
+ <summary>
+ Destroy the session.
+ This is called automatically when the
+ Router is destroyed.
+ </summary>
+ </member>
+ <member name="T:Glacier2.StringSetOperations_">
+ <summary>
+ An object for managing the set of identity constraints for specific
+ parts of object identity on a
+ Session.
+ </summary>
+ </member>
+ <member name="M:Glacier2.StringSetOperations_.add(System.String[],Ice.Current)">
+ <summary>
+ Add a sequence of strings to this set of constraints.
+ Order is
+ not preserved and duplicates are implicitly removed.
+
+ </summary>
+ <param name="additions">The sequence of strings to be added.</param>
+ <param name="current__">The Current object for the invocation.</param>
+ </member>
+ <member name="M:Glacier2.StringSetOperations_.remove(System.String[],Ice.Current)">
+ <summary>
+ Remove a sequence of strings from this set of constraints.
+ No
+ errors are returned if an entry is not found.
+
+ </summary>
+ <param name="deletions">The sequence of strings to be removed.</param>
+ <param name="current__">The Current object for the invocation.</param>
+ </member>
+ <member name="M:Glacier2.StringSetOperations_.get(Ice.Current)">
+ <summary>
+ Returns a sequence of strings describing the constraints in this
+ set.
+ </summary>
+ <returns>The sequence of strings for this set.</returns>
+ <param name="current__">The Current object for the invocation.</param>
+ </member>
+ <member name="T:Glacier2.StringSetOperationsNC_">
+ <summary>
+ An object for managing the set of identity constraints for specific
+ parts of object identity on a
+ Session.
+ </summary>
+ </member>
+ <member name="M:Glacier2.StringSetOperationsNC_.add(System.String[])">
+ <summary>
+ Add a sequence of strings to this set of constraints.
+ Order is
+ not preserved and duplicates are implicitly removed.
+
+ </summary>
+ <param name="additions">The sequence of strings to be added.</param>
+ </member>
+ <member name="M:Glacier2.StringSetOperationsNC_.remove(System.String[])">
+ <summary>
+ Remove a sequence of strings from this set of constraints.
+ No
+ errors are returned if an entry is not found.
+
+ </summary>
+ <param name="deletions">The sequence of strings to be removed.</param>
+ </member>
+ <member name="M:Glacier2.StringSetOperationsNC_.get">
+ <summary>
+ Returns a sequence of strings describing the constraints in this
+ set.
+ </summary>
+ <returns>The sequence of strings for this set.</returns>
+ </member>
+ <member name="T:Glacier2.IdentitySetOperations_">
+ <summary>
+ An object for managing the set of object identity constraints on a
+ Session.
+ </summary>
+ </member>
+ <member name="M:Glacier2.IdentitySetOperations_.add(Ice.Identity[],Ice.Current)">
+ <summary>
+ Add a sequence of Ice identities to this set of constraints.
+ Order is
+ not preserved and duplicates are implicitly removed.
+
+ </summary>
+ <param name="additions">The sequence of Ice identities to be added.</param>
+ <param name="current__">The Current object for the invocation.</param>
+ </member>
+ <member name="M:Glacier2.IdentitySetOperations_.remove(Ice.Identity[],Ice.Current)">
+ <summary>
+ Remove a sequence of identities from this set of constraints.
+ No
+ errors are returned if an entry is not found.
+
+ </summary>
+ <param name="deletions">The sequence of Ice identities to be removed.</param>
+ <param name="current__">The Current object for the invocation.</param>
+ </member>
+ <member name="M:Glacier2.IdentitySetOperations_.get(Ice.Current)">
+ <summary>
+ Returns a sequence of identities describing the constraints in this
+ set.
+ </summary>
+ <returns>The sequence of Ice identities for this set.</returns>
+ <param name="current__">The Current object for the invocation.</param>
+ </member>
+ <member name="T:Glacier2.IdentitySetOperationsNC_">
+ <summary>
+ An object for managing the set of object identity constraints on a
+ Session.
+ </summary>
+ </member>
+ <member name="M:Glacier2.IdentitySetOperationsNC_.add(Ice.Identity[])">
+ <summary>
+ Add a sequence of Ice identities to this set of constraints.
+ Order is
+ not preserved and duplicates are implicitly removed.
+
+ </summary>
+ <param name="additions">The sequence of Ice identities to be added.</param>
+ </member>
+ <member name="M:Glacier2.IdentitySetOperationsNC_.remove(Ice.Identity[])">
+ <summary>
+ Remove a sequence of identities from this set of constraints.
+ No
+ errors are returned if an entry is not found.
+
+ </summary>
+ <param name="deletions">The sequence of Ice identities to be removed.</param>
+ </member>
+ <member name="M:Glacier2.IdentitySetOperationsNC_.get">
+ <summary>
+ Returns a sequence of identities describing the constraints in this
+ set.
+ </summary>
+ <returns>The sequence of Ice identities for this set.</returns>
+ </member>
+ <member name="T:Glacier2.SessionControlOperations_">
+ <summary>
+ An administrative session control object, which is tied to the
+ lifecycle of a Session.
+ </summary>
+ </member>
+ <member name="M:Glacier2.SessionControlOperations_.categories(Ice.Current)">
+ <summary>
+ Access the object that manages the allowable categories
+ for object identities for this session.
+ </summary>
+ <returns>A StringSet object.</returns>
+ <param name="current__">The Current object for the invocation.</param>
+ </member>
+ <member name="M:Glacier2.SessionControlOperations_.adapterIds(Ice.Current)">
+ <summary>
+ Access the object that manages the allowable adapter identities
+ for objects for this session.
+ </summary>
+ <returns>A StringSet object.</returns>
+ <param name="current__">The Current object for the invocation.</param>
+ </member>
+ <member name="M:Glacier2.SessionControlOperations_.identities(Ice.Current)">
+ <summary>
+ Access the object that manages the allowable object identities
+ for this session.
+ </summary>
+ <returns>An IdentitySet object.</returns>
+ <param name="current__">The Current object for the invocation.</param>
+ </member>
+ <member name="M:Glacier2.SessionControlOperations_.getSessionTimeout(Ice.Current)">
+ <summary>
+ Get the session timeout.
+ </summary>
+ <returns>The timeout.</returns>
+ <param name="current__">The Current object for the invocation.</param>
+ </member>
+ <member name="M:Glacier2.SessionControlOperations_.destroy(Ice.Current)">
+ <summary>
+ Destroy the associated session.
+ </summary>
+ <param name="current__">The Current object for the invocation.</param>
+ </member>
+ <member name="T:Glacier2.SessionControlOperationsNC_">
+ <summary>
+ An administrative session control object, which is tied to the
+ lifecycle of a Session.
+ </summary>
+ </member>
+ <member name="M:Glacier2.SessionControlOperationsNC_.categories">
+ <summary>
+ Access the object that manages the allowable categories
+ for object identities for this session.
+ </summary>
+ <returns>A StringSet object.</returns>
+ </member>
+ <member name="M:Glacier2.SessionControlOperationsNC_.adapterIds">
+ <summary>
+ Access the object that manages the allowable adapter identities
+ for objects for this session.
+ </summary>
+ <returns>A StringSet object.</returns>
+ </member>
+ <member name="M:Glacier2.SessionControlOperationsNC_.identities">
+ <summary>
+ Access the object that manages the allowable object identities
+ for this session.
+ </summary>
+ <returns>An IdentitySet object.</returns>
+ </member>
+ <member name="M:Glacier2.SessionControlOperationsNC_.getSessionTimeout">
+ <summary>
+ Get the session timeout.
+ </summary>
+ <returns>The timeout.</returns>
+ </member>
+ <member name="M:Glacier2.SessionControlOperationsNC_.destroy">
+ <summary>
+ Destroy the associated session.
+ </summary>
+ </member>
+ <member name="T:Glacier2.SessionManagerOperations_">
+ <summary>
+ The session manager for username/password authenticated users that
+ is responsible for managing Session objects.
+ New session objects
+ are created by the Router object calling on an application-provided
+ session manager. If no session manager is provided by the application,
+ no client-visible sessions are passed to the client.
+
+ </summary>
+ </member>
+ <member name="M:Glacier2.SessionManagerOperations_.create(System.String,Glacier2.SessionControlPrx,Ice.Current)">
+ <summary>
+ Create a new session.
+ </summary>
+ <param name="userId">The user id for the session.
+
+ </param>
+ <param name="control">A proxy to the session control object.
+
+ </param>
+ <returns>A proxy to the newly created session.
+
+ </returns>
+ <exception name="CannotCreateSessionException">Raised if the session
+ cannot be created.</exception>
+ <param name="current__">The Current object for the invocation.</param>
+ </member>
+ <member name="T:Glacier2.SessionManagerOperationsNC_">
+ <summary>
+ The session manager for username/password authenticated users that
+ is responsible for managing Session objects.
+ New session objects
+ are created by the Router object calling on an application-provided
+ session manager. If no session manager is provided by the application,
+ no client-visible sessions are passed to the client.
+
+ </summary>
+ </member>
+ <member name="M:Glacier2.SessionManagerOperationsNC_.create(System.String,Glacier2.SessionControlPrx)">
+ <summary>
+ Create a new session.
+ </summary>
+ <param name="userId">The user id for the session.
+
+ </param>
+ <param name="control">A proxy to the session control object.
+
+ </param>
+ <returns>A proxy to the newly created session.
+
+ </returns>
+ <exception name="CannotCreateSessionException">Raised if the session
+ cannot be created.</exception>
+ </member>
+ <member name="T:Glacier2.SSLSessionManagerOperations_">
+ <summary>
+ The session manager for SSL authenticated users that is
+ responsible for managing Session objects.
+ New session objects are
+ created by the Router object calling on an application-provided
+ session manager. If no session manager is provided by the
+ application, no client-visible sessions are passed to the client.
+
+ </summary>
+ </member>
+ <member name="M:Glacier2.SSLSessionManagerOperations_.create(Glacier2.SSLInfo,Glacier2.SessionControlPrx,Ice.Current)">
+ <summary>
+ Create a new session.
+ </summary>
+ <param name="info">The SSL info.
+
+ </param>
+ <param name="control">A proxy to the session control object.
+
+ </param>
+ <returns>A proxy to the newly created session.
+
+ </returns>
+ <exception name="CannotCreateSessionException">Raised if the session
+ cannot be created.</exception>
+ <param name="current__">The Current object for the invocation.</param>
+ </member>
+ <member name="T:Glacier2.SSLSessionManagerOperationsNC_">
+ <summary>
+ The session manager for SSL authenticated users that is
+ responsible for managing Session objects.
+ New session objects are
+ created by the Router object calling on an application-provided
+ session manager. If no session manager is provided by the
+ application, no client-visible sessions are passed to the client.
+
+ </summary>
+ </member>
+ <member name="M:Glacier2.SSLSessionManagerOperationsNC_.create(Glacier2.SSLInfo,Glacier2.SessionControlPrx)">
+ <summary>
+ Create a new session.
+ </summary>
+ <param name="info">The SSL info.
+
+ </param>
+ <param name="control">A proxy to the session control object.
+
+ </param>
+ <returns>A proxy to the newly created session.
+
+ </returns>
+ <exception name="CannotCreateSessionException">Raised if the session
+ cannot be created.</exception>
+ </member>
+ <member name="T:Glacier2.SessionPrxHelper">
+ <summary>
+ A client-visible session object, which is tied to the lifecycle of
+ a Router.
+ </summary>
+ </member>
+ <member name="M:Glacier2.SessionPrxHelper.destroy">
+ <summary>
+ Destroy the session.
+ This is called automatically when the
+ Router is destroyed.
+ </summary>
+ </member>
+ <member name="M:Glacier2.SessionPrxHelper.destroy(System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Destroy the session.
+ This is called automatically when the
+ Router is destroyed.
+ </summary>
+ <param name="context__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="M:Glacier2.SessionPrxHelper.begin_destroy(System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Destroy the session.
+ This is called automatically when the
+ </summary>
+ <param name="ctx__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="M:Glacier2.SessionPrxHelper.destroy_async(Glacier2.AMI_Session_destroy)">
+ <summary>
+ Destroy the session.
+ This is called automatically when the
+ </summary>
+ <param name="cb__">The callback object for the operation.</param>
+ </member>
+ <member name="M:Glacier2.SessionPrxHelper.destroy_async(Glacier2.AMI_Session_destroy,System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Destroy the session.
+ This is called automatically when the
+ </summary>
+ <param name="cb__">The callback object for the operation.</param>
+ <param name="ctx__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="T:Glacier2.StringSetPrxHelper">
+ <summary>
+ An object for managing the set of identity constraints for specific
+ parts of object identity on a
+ Session.
+ </summary>
+ </member>
+ <member name="M:Glacier2.StringSetPrxHelper.add(System.String[])">
+ <summary>
+ Add a sequence of strings to this set of constraints.
+ Order is
+ not preserved and duplicates are implicitly removed.
+
+ </summary>
+ <param name="additions">The sequence of strings to be added.</param>
+ </member>
+ <member name="M:Glacier2.StringSetPrxHelper.add(System.String[],System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Add a sequence of strings to this set of constraints.
+ Order is
+ not preserved and duplicates are implicitly removed.
+
+ </summary>
+ <param name="additions">The sequence of strings to be added.</param>
+ <param name="context__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="M:Glacier2.StringSetPrxHelper.get">
+ <summary>
+ Returns a sequence of strings describing the constraints in this
+ set.
+ </summary>
+ <returns>The sequence of strings for this set.</returns>
+ </member>
+ <member name="M:Glacier2.StringSetPrxHelper.get(System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Returns a sequence of strings describing the constraints in this
+ set.
+ </summary>
+ <returns>The sequence of strings for this set.</returns>
+ <param name="context__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="M:Glacier2.StringSetPrxHelper.remove(System.String[])">
+ <summary>
+ Remove a sequence of strings from this set of constraints.
+ No
+ errors are returned if an entry is not found.
+
+ </summary>
+ <param name="deletions">The sequence of strings to be removed.</param>
+ </member>
+ <member name="M:Glacier2.StringSetPrxHelper.remove(System.String[],System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Remove a sequence of strings from this set of constraints.
+ No
+ errors are returned if an entry is not found.
+
+ </summary>
+ <param name="deletions">The sequence of strings to be removed.</param>
+ <param name="context__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="M:Glacier2.StringSetPrxHelper.begin_add(System.String[],System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Add a sequence of strings to this set of constraints.
+ Order is
+ </summary>
+ <param name="additions">The sequence of strings to be added.</param>
+ <param name="ctx__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="M:Glacier2.StringSetPrxHelper.begin_get(System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Returns a sequence of strings describing the constraints in this
+ set.
+ </summary>
+ <param name="ctx__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="M:Glacier2.StringSetPrxHelper.begin_remove(System.String[],System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Remove a sequence of strings from this set of constraints.
+ No
+ </summary>
+ <param name="deletions">The sequence of strings to be removed.</param>
+ <param name="ctx__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="T:Glacier2.IdentitySetPrxHelper">
+ <summary>
+ An object for managing the set of object identity constraints on a
+ Session.
+ </summary>
+ </member>
+ <member name="M:Glacier2.IdentitySetPrxHelper.add(Ice.Identity[])">
+ <summary>
+ Add a sequence of Ice identities to this set of constraints.
+ Order is
+ not preserved and duplicates are implicitly removed.
+
+ </summary>
+ <param name="additions">The sequence of Ice identities to be added.</param>
+ </member>
+ <member name="M:Glacier2.IdentitySetPrxHelper.add(Ice.Identity[],System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Add a sequence of Ice identities to this set of constraints.
+ Order is
+ not preserved and duplicates are implicitly removed.
+
+ </summary>
+ <param name="additions">The sequence of Ice identities to be added.</param>
+ <param name="context__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="M:Glacier2.IdentitySetPrxHelper.get">
+ <summary>
+ Returns a sequence of identities describing the constraints in this
+ set.
+ </summary>
+ <returns>The sequence of Ice identities for this set.</returns>
+ </member>
+ <member name="M:Glacier2.IdentitySetPrxHelper.get(System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Returns a sequence of identities describing the constraints in this
+ set.
+ </summary>
+ <returns>The sequence of Ice identities for this set.</returns>
+ <param name="context__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="M:Glacier2.IdentitySetPrxHelper.remove(Ice.Identity[])">
+ <summary>
+ Remove a sequence of identities from this set of constraints.
+ No
+ errors are returned if an entry is not found.
+
+ </summary>
+ <param name="deletions">The sequence of Ice identities to be removed.</param>
+ </member>
+ <member name="M:Glacier2.IdentitySetPrxHelper.remove(Ice.Identity[],System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Remove a sequence of identities from this set of constraints.
+ No
+ errors are returned if an entry is not found.
+
+ </summary>
+ <param name="deletions">The sequence of Ice identities to be removed.</param>
+ <param name="context__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="M:Glacier2.IdentitySetPrxHelper.begin_add(Ice.Identity[],System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Add a sequence of Ice identities to this set of constraints.
+ Order is
+ </summary>
+ <param name="additions">The sequence of Ice identities to be added.</param>
+ <param name="ctx__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="M:Glacier2.IdentitySetPrxHelper.begin_get(System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Returns a sequence of identities describing the constraints in this
+ set.
+ </summary>
+ <param name="ctx__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="M:Glacier2.IdentitySetPrxHelper.begin_remove(Ice.Identity[],System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Remove a sequence of identities from this set of constraints.
+ No
+ </summary>
+ <param name="deletions">The sequence of Ice identities to be removed.</param>
+ <param name="ctx__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="T:Glacier2.SessionControlPrxHelper">
+ <summary>
+ An administrative session control object, which is tied to the
+ lifecycle of a Session.
+ </summary>
+ </member>
+ <member name="M:Glacier2.SessionControlPrxHelper.adapterIds">
+ <summary>
+ Access the object that manages the allowable adapter identities
+ for objects for this session.
+ </summary>
+ <returns>A StringSet object.</returns>
+ </member>
+ <member name="M:Glacier2.SessionControlPrxHelper.adapterIds(System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Access the object that manages the allowable adapter identities
+ for objects for this session.
+ </summary>
+ <returns>A StringSet object.</returns>
+ <param name="context__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="M:Glacier2.SessionControlPrxHelper.categories">
+ <summary>
+ Access the object that manages the allowable categories
+ for object identities for this session.
+ </summary>
+ <returns>A StringSet object.</returns>
+ </member>
+ <member name="M:Glacier2.SessionControlPrxHelper.categories(System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Access the object that manages the allowable categories
+ for object identities for this session.
+ </summary>
+ <returns>A StringSet object.</returns>
+ <param name="context__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="M:Glacier2.SessionControlPrxHelper.destroy">
+ <summary>
+ Destroy the associated session.
+ </summary>
+ </member>
+ <member name="M:Glacier2.SessionControlPrxHelper.destroy(System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Destroy the associated session.
+ </summary>
+ <param name="context__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="M:Glacier2.SessionControlPrxHelper.getSessionTimeout">
+ <summary>
+ Get the session timeout.
+ </summary>
+ <returns>The timeout.</returns>
+ </member>
+ <member name="M:Glacier2.SessionControlPrxHelper.getSessionTimeout(System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Get the session timeout.
+ </summary>
+ <returns>The timeout.</returns>
+ <param name="context__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="M:Glacier2.SessionControlPrxHelper.identities">
+ <summary>
+ Access the object that manages the allowable object identities
+ for this session.
+ </summary>
+ <returns>An IdentitySet object.</returns>
+ </member>
+ <member name="M:Glacier2.SessionControlPrxHelper.identities(System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Access the object that manages the allowable object identities
+ for this session.
+ </summary>
+ <returns>An IdentitySet object.</returns>
+ <param name="context__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="M:Glacier2.SessionControlPrxHelper.begin_adapterIds(System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Access the object that manages the allowable adapter identities
+ for objects for this session.
+ </summary>
+ <param name="ctx__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="M:Glacier2.SessionControlPrxHelper.begin_categories(System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Access the object that manages the allowable categories
+ for object identities for this session.
+ </summary>
+ <param name="ctx__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="M:Glacier2.SessionControlPrxHelper.begin_destroy(System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Destroy the associated session.
+ </summary>
+ <param name="ctx__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="M:Glacier2.SessionControlPrxHelper.destroy_async(Glacier2.AMI_SessionControl_destroy)">
+ <summary>
+ Destroy the associated session.
+ </summary>
+ <param name="cb__">The callback object for the operation.</param>
+ </member>
+ <member name="M:Glacier2.SessionControlPrxHelper.destroy_async(Glacier2.AMI_SessionControl_destroy,System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Destroy the associated session.
+ </summary>
+ <param name="cb__">The callback object for the operation.</param>
+ <param name="ctx__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="M:Glacier2.SessionControlPrxHelper.begin_getSessionTimeout(System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Get the session timeout.
+ </summary>
+ <param name="ctx__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="M:Glacier2.SessionControlPrxHelper.begin_identities(System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Access the object that manages the allowable object identities
+ for this session.
+ </summary>
+ <param name="ctx__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="T:Glacier2.SessionManagerPrxHelper">
+ <summary>
+ The session manager for username/password authenticated users that
+ is responsible for managing Session objects.
+ New session objects
+ are created by the Router object calling on an application-provided
+ session manager. If no session manager is provided by the application,
+ no client-visible sessions are passed to the client.
+
+ </summary>
+ </member>
+ <member name="M:Glacier2.SessionManagerPrxHelper.create(System.String,Glacier2.SessionControlPrx)">
+ <summary>
+ Create a new session.
+ </summary>
+ <param name="userId">The user id for the session.
+
+ </param>
+ <param name="control">A proxy to the session control object.
+
+ </param>
+ <returns>A proxy to the newly created session.
+
+ </returns>
+ <exception name="CannotCreateSessionException">Raised if the session
+ cannot be created.</exception>
+ </member>
+ <member name="M:Glacier2.SessionManagerPrxHelper.create(System.String,Glacier2.SessionControlPrx,System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Create a new session.
+ </summary>
+ <param name="userId">The user id for the session.
+
+ </param>
+ <param name="control">A proxy to the session control object.
+
+ </param>
+ <returns>A proxy to the newly created session.
+
+ </returns>
+ <exception name="CannotCreateSessionException">Raised if the session
+ cannot be created.</exception>
+ <param name="context__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="M:Glacier2.SessionManagerPrxHelper.begin_create(System.String,Glacier2.SessionControlPrx,System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Create a new session.
+ </summary>
+ <param name="userId">The user id for the session.
+
+ </param>
+ <param name="control">A proxy to the session control object.
+
+ </param>
+ <param name="ctx__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="M:Glacier2.SessionManagerPrxHelper.create_async(Glacier2.AMI_SessionManager_create,System.String,Glacier2.SessionControlPrx)">
+ <summary>
+ Create a new session.
+ </summary>
+ <param name="cb__">The callback object for the operation.</param>
+ <param name="userId">The user id for the session.
+
+ </param>
+ <param name="control">A proxy to the session control object.
+
+ </param>
+ </member>
+ <member name="M:Glacier2.SessionManagerPrxHelper.create_async(Glacier2.AMI_SessionManager_create,System.String,Glacier2.SessionControlPrx,System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Create a new session.
+ </summary>
+ <param name="cb__">The callback object for the operation.</param>
+ <param name="userId">The user id for the session.
+
+ </param>
+ <param name="control">A proxy to the session control object.
+
+ </param>
+ <param name="ctx__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="T:Glacier2.SSLSessionManagerPrxHelper">
+ <summary>
+ The session manager for SSL authenticated users that is
+ responsible for managing Session objects.
+ New session objects are
+ created by the Router object calling on an application-provided
+ session manager. If no session manager is provided by the
+ application, no client-visible sessions are passed to the client.
+
+ </summary>
+ </member>
+ <member name="M:Glacier2.SSLSessionManagerPrxHelper.create(Glacier2.SSLInfo,Glacier2.SessionControlPrx)">
+ <summary>
+ Create a new session.
+ </summary>
+ <param name="info">The SSL info.
+
+ </param>
+ <param name="control">A proxy to the session control object.
+
+ </param>
+ <returns>A proxy to the newly created session.
+
+ </returns>
+ <exception name="CannotCreateSessionException">Raised if the session
+ cannot be created.</exception>
+ </member>
+ <member name="M:Glacier2.SSLSessionManagerPrxHelper.create(Glacier2.SSLInfo,Glacier2.SessionControlPrx,System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Create a new session.
+ </summary>
+ <param name="info">The SSL info.
+
+ </param>
+ <param name="control">A proxy to the session control object.
+
+ </param>
+ <returns>A proxy to the newly created session.
+
+ </returns>
+ <exception name="CannotCreateSessionException">Raised if the session
+ cannot be created.</exception>
+ <param name="context__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="M:Glacier2.SSLSessionManagerPrxHelper.begin_create(Glacier2.SSLInfo,Glacier2.SessionControlPrx,System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Create a new session.
+ </summary>
+ <param name="info">The SSL info.
+
+ </param>
+ <param name="control">A proxy to the session control object.
+
+ </param>
+ <param name="ctx__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="M:Glacier2.SSLSessionManagerPrxHelper.create_async(Glacier2.AMI_SSLSessionManager_create,Glacier2.SSLInfo,Glacier2.SessionControlPrx)">
+ <summary>
+ Create a new session.
+ </summary>
+ <param name="cb__">The callback object for the operation.</param>
+ <param name="info">The SSL info.
+
+ </param>
+ <param name="control">A proxy to the session control object.
+
+ </param>
+ </member>
+ <member name="M:Glacier2.SSLSessionManagerPrxHelper.create_async(Glacier2.AMI_SSLSessionManager_create,Glacier2.SSLInfo,Glacier2.SessionControlPrx,System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Create a new session.
+ </summary>
+ <param name="cb__">The callback object for the operation.</param>
+ <param name="info">The SSL info.
+
+ </param>
+ <param name="control">A proxy to the session control object.
+
+ </param>
+ <param name="ctx__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="T:Glacier2.AMI_Session_destroy">
+ <summary>
+ Destroy the session.
+ This is called automatically when the
+ Router is destroyed.
+ </summary>
+ </member>
+ <member name="M:Glacier2.AMI_Session_destroy.ice_response">
+ <summary>
+ ice_response indicates that
+ the operation completed successfully.
+ </summary>
+ </member>
+ <member name="T:Glacier2.AMI_SessionControl_destroy">
+ <summary>
+ Destroy the associated session.
+ </summary>
+ </member>
+ <member name="M:Glacier2.AMI_SessionControl_destroy.ice_response">
+ <summary>
+ ice_response indicates that
+ the operation completed successfully.
+ </summary>
+ </member>
+ <member name="T:Glacier2.AMI_SessionManager_create">
+ <summary>
+ Create a new session.
+ </summary>
+ </member>
+ <member name="M:Glacier2.AMI_SessionManager_create.ice_response(Glacier2.SessionPrx)">
+ <summary>
+ ice_response indicates that
+ the operation completed successfully.
+ </summary>
+ <param name="ret__">(return value) A proxy to the newly created session.
+
+ </param>
+ </member>
+ <member name="T:Glacier2.AMI_SSLSessionManager_create">
+ <summary>
+ Create a new session.
+ </summary>
+ </member>
+ <member name="M:Glacier2.AMI_SSLSessionManager_create.ice_response(Glacier2.SessionPrx)">
+ <summary>
+ ice_response indicates that
+ the operation completed successfully.
+ </summary>
+ <param name="ret__">(return value) A proxy to the newly created session.
+
+ </param>
+ </member>
+ </members>
+</doc>
diff --git a/cs/demo/Glacier2/sl/chat/bin/Ice.xml b/cs/demo/Glacier2/sl/chat/bin/Ice.xml
new file mode 100644
index 00000000000..6ca223cc560
--- /dev/null
+++ b/cs/demo/Glacier2/sl/chat/bin/Ice.xml
@@ -0,0 +1,5815 @@
+<?xml version="1.0"?>
+<doc>
+ <assembly>
+ <name>Ice</name>
+ </assembly>
+ <members>
+ <member name="T:Ice.AMDCallback">
+ <summary>
+ AMDCallback is the interface from which all AMD callbacks are derived.
+ </summary>
+ </member>
+ <member name="M:Ice.AMDCallback.ice_exception(System.Exception)">
+ <summary>
+ Indicates to the Ice run time that an operation completed
+ with a run-time exception.
+ </summary>
+ <param name="ex">The encoded Ice run-time exception. Note that, if ex
+ is a user exception, the caller receives UnknownUserException.
+ Use ice_response to raise user exceptions.</param>
+ </member>
+ <member name="M:Ice.ObjectFactory.create(System.String)">
+ <summary>
+ Create a new object for a given object type.
+ The type is the
+ absolute Slice type id, i.e., the id relative to the
+ unnamed top-level Slice module. For example, the absolute
+ Slice type id for interfaces of type Bar in the module
+ Foo is ::Foo::Bar.
+
+ The leading "::" is required.
+
+ </summary>
+ <param name="type">The object type.
+
+ </param>
+ <returns>The object created for the given type, or nil if the
+ factory is unable to create the object.</returns>
+ </member>
+ <member name="M:Ice.ObjectFactory.destroy">
+ <summary>
+ Called when the factory is removed from the communicator, or if
+ the communicator is destroyed.
+ </summary>
+ </member>
+ <member name="M:Ice.Communicator.destroy">
+ <summary>
+ Destroy the communicator.
+ This operation calls shutdown
+ implicitly. Calling destroy cleans up memory, and shuts down
+ this communicator's client functionality and destroys all object
+ adapters. Subsequent calls to destroy are ignored.
+
+ </summary>
+ </member>
+ <member name="M:Ice.Communicator.shutdown">
+ <summary>
+ Shuts down this communicator's server functionality, which
+ includes the deactivation of all object adapters.
+ (Attempts to use
+ a deactivated object adapter raise ObjectAdapterDeactivatedException.)
+ Subsequent calls to shutdown are ignored.
+
+ After shutdown returns, no new requests are
+ processed. However, requests that have been started before
+ shutdown was called might still be active. You can use
+ waitForShutdown to wait for the completion of all
+ requests.
+
+ </summary>
+ </member>
+ <member name="M:Ice.Communicator.waitForShutdown">
+ <summary>
+ Wait until the application has called shutdown (or destroy).
+ On the server side, this operation blocks the calling thread
+ until all currently-executing operations have completed.
+ On the client side, the operation simply block until another
+ thread has called shutdown or destroy.
+
+ A typical use of this operation is to call it
+ from the main thread, which then waits until some other thread
+ calls shutdown. After shut-down is complete, the main thread
+ returns and can do some cleanup work before it finally calls
+ destroy to shut down the client functionality, and then
+ exits the application.
+
+ </summary>
+ </member>
+ <member name="M:Ice.Communicator.isShutdown">
+ <summary>
+ Check whether communicator has been shut down.
+ </summary>
+ <returns>True if the communicator has been shut down; false otherwise.
+
+ </returns>
+ </member>
+ <member name="M:Ice.Communicator.stringToProxy(System.String)">
+ <summary>
+ Convert a stringified proxy into a proxy.
+ For example,
+ MyCategory/MyObject:tcp -h some_host -p
+ 10000 creates a proxy that refers to the Ice object
+ having an identity with a name "MyObject" and a category
+ "MyCategory", with the server running on host "some_host", port
+ 10000. If the stringified proxy does not parse correctly, the
+ operation throws one of ProxyParseException,
+ EndpointParseException, or IdentityParseException.
+ An appendix in the Ice manual provides a detailed description
+ of the syntax supported by stringified proxies.
+
+ </summary>
+ <param name="str">The stringified proxy to convert into a proxy.
+
+ </param>
+ <returns>The proxy, or nil if str is an empty string.
+
+ </returns>
+ </member>
+ <member name="M:Ice.Communicator.proxyToString(Ice.ObjectPrx)">
+ <summary>
+ Convert a proxy into a string.
+ </summary>
+ <param name="obj">The proxy to convert into a stringified proxy.
+
+ </param>
+ <returns>The stringified proxy, or an empty string if
+ obj is nil.
+
+ </returns>
+ </member>
+ <member name="M:Ice.Communicator.propertyToProxy(System.String)">
+ <summary>
+ Convert a set of proxy properties into a proxy.
+ The "base"
+ name supplied in the property argument refers to a
+ property containing a stringified proxy, such as
+ MyProxy=id:tcp -h localhost -p 10000. Additional
+ properties configure local settings for the proxy, such as
+ MyProxy.PreferSecure=1. The "Properties"
+ appendix in the Ice manual describes each of the supported
+ proxy properties.
+
+ </summary>
+ <param name="property">The base property name.
+
+ </param>
+ <returns>The proxy.</returns>
+ </member>
+ <member name="M:Ice.Communicator.proxyToProperty(Ice.ObjectPrx,System.String)">
+ <summary>
+ Convert a proxy to a set of proxy properties.
+ </summary>
+ <param name="proxy">The proxy.
+
+ </param>
+ <param name="property">The base property name.
+
+ </param>
+ <returns>The property set.</returns>
+ </member>
+ <member name="M:Ice.Communicator.stringToIdentity(System.String)">
+ <summary>
+ Convert a string into an identity.
+ If the string does not parse
+ correctly, the operation throws IdentityParseException.
+
+ </summary>
+ <param name="str">The string to convert into an identity.
+
+ </param>
+ <returns>The identity.
+
+ </returns>
+ </member>
+ <member name="M:Ice.Communicator.identityToString(Ice.Identity)">
+ <summary>
+ Convert an identity into a string.
+ </summary>
+ <param name="ident">The identity to convert into a string.
+
+ </param>
+ <returns>The "stringified" identity.
+
+ </returns>
+ </member>
+ <member name="M:Ice.Communicator.createObjectAdapter(System.String)">
+ <summary>
+ Create a new object adapter.
+ The endpoints for the object
+ adapter are taken from the property name.Endpoints.
+
+ It is legal to create an object adapter with the empty string as
+ its name. Such an object adapter is accessible via bidirectional
+ connections or by collocated invocations that originate from the
+ same communicator as is used by the adapter.
+
+ Attempts to create a named object adapter for which no configuration
+ can be found raise InitializationException.
+
+ </summary>
+ <param name="name">The object adapter name.
+
+ </param>
+ <returns>The new object adapter.
+
+ </returns>
+ </member>
+ <member name="M:Ice.Communicator.createObjectAdapterWithEndpoints(System.String,System.String)">
+ <summary>
+ Create a new object adapter with endpoints.
+ This operation sets
+ the property name.Endpoints,
+ and then calls createObjectAdapter. It is provided as a
+ convenience function.
+
+ Calling this operation with an empty name will result in a
+ UUID being generated for the name.
+
+ </summary>
+ <param name="name">The object adapter name.
+
+ </param>
+ <param name="endpoints">The endpoints for the object adapter.
+
+ </param>
+ <returns>The new object adapter.
+
+ </returns>
+ </member>
+ <member name="M:Ice.Communicator.createObjectAdapterWithRouter(System.String,Ice.RouterPrx)">
+ <summary>
+ Create a new object adapter with a router.
+ This operation
+ creates a routed object adapter.
+
+ Calling this operation with an empty name will result in a
+ UUID being generated for the name.
+
+ </summary>
+ <param name="name">The object adapter name.
+
+ </param>
+ <param name="rtr">The router.
+
+ </param>
+ <returns>The new object adapter.
+
+ </returns>
+ </member>
+ <member name="M:Ice.Communicator.addObjectFactory(Ice.ObjectFactory,System.String)">
+ <summary>
+ Add a servant factory to this communicator.
+ Installing a
+ factory with an id for which a factory is already registered
+ throws AlreadyRegisteredException.
+
+ When unmarshaling an Ice object, the Ice run-time reads the
+ most-derived type id off the wire and attempts to create an
+ instance of the type using a factory. If no instance is created,
+ either because no factory was found, or because all factories
+ returned nil, the object is sliced to the next most-derived type
+ and the process repeats. If no factory is found that can create an
+ instance, the Ice run-time throws NoObjectFactoryException.
+
+ The following order is used to locate a factory for a type:
+
+
+
+ The Ice run-time looks for a factory registered
+ specifically for the type.
+
+ If no instance has been created, the Ice run-time looks
+ for the default factory, which is registered with an empty type id.
+
+
+ If no instance has been created by any of the preceding
+ steps, the Ice run-time looks for a factory that may have been
+ statically generated by the language mapping for non-abstract classes.
+
+
+
+
+ </summary>
+ <param name="factory">The factory to add.
+
+ </param>
+ <param name="id">The type id for which the factory can create instances, or
+ an empty string for the default factory.
+
+ </param>
+ </member>
+ <member name="M:Ice.Communicator.findObjectFactory(System.String)">
+ <summary>
+ Find a servant factory registered with this communicator.
+ </summary>
+ <param name="id">The type id for which the factory can create instances,
+ or an empty string for the default factory.
+
+ </param>
+ <returns>The servant factory, or null if no servant factory was
+ found for the given id.
+
+ </returns>
+ </member>
+ <member name="M:Ice.Communicator.getImplicitContext">
+ <summary>
+ Get the implicit context associated with this communicator.
+ </summary>
+ <returns>The implicit context associated with this communicator;
+ returns null when the property Ice.ImplicitContext is not set
+ or is set to None.</returns>
+ </member>
+ <member name="M:Ice.Communicator.getProperties">
+ <summary>
+ Get the properties for this communicator.
+ </summary>
+ <returns>This communicator's properties.
+
+ </returns>
+ </member>
+ <member name="M:Ice.Communicator.getLogger">
+ <summary>
+ Get the logger for this communicator.
+ </summary>
+ <returns>This communicator's logger.
+
+ </returns>
+ </member>
+ <member name="M:Ice.Communicator.getStats">
+ <summary>
+ Get the statistics callback object for this communicator.
+ </summary>
+ <returns>This communicator's statistics callback object.
+
+ </returns>
+ </member>
+ <member name="M:Ice.Communicator.getDefaultRouter">
+ <summary>
+ Get the default router this communicator.
+ </summary>
+ <returns>The default router for this communicator.
+
+ </returns>
+ </member>
+ <member name="M:Ice.Communicator.setDefaultRouter(Ice.RouterPrx)">
+ <summary>
+ Set a default router for this communicator.
+ All newly
+ created proxies will use this default router. To disable the
+ default router, null can be used. Note that this
+ operation has no effect on existing proxies.
+
+ You can also set a router for an individual proxy
+ by calling the operation ice_router on the proxy.
+
+ </summary>
+ <param name="rtr">The default router to use for this communicator.
+
+ </param>
+ </member>
+ <member name="M:Ice.Communicator.getDefaultLocator">
+ <summary>
+ Get the default locator this communicator.
+ </summary>
+ <returns>The default locator for this communicator.
+
+ </returns>
+ </member>
+ <member name="M:Ice.Communicator.setDefaultLocator(Ice.LocatorPrx)">
+ <summary>
+ Set a default Ice locator for this communicator.
+ All newly
+ created proxy and object adapters will use this default
+ locator. To disable the default locator, null can be used.
+ Note that this operation has no effect on existing proxies or
+ object adapters.
+
+ You can also set a locator for an individual proxy
+ by calling the operation ice_locator on the proxy, or for an
+ object adapter by calling the operation setLocator on the
+ object adapter.
+
+ </summary>
+ <param name="loc">The default locator to use for this communicator.
+
+ </param>
+ </member>
+ <member name="M:Ice.Communicator.getPluginManager">
+ <summary>
+ Get the plug-in manager for this communicator.
+ </summary>
+ <returns>This communicator's plug-in manager.
+
+ </returns>
+ </member>
+ <member name="M:Ice.Communicator.flushBatchRequests">
+ <summary>
+ Flush any pending batch requests for this communicator.
+ This causes all batch requests that were sent via proxies
+ obtained via this communicator to be sent to the server.
+ </summary>
+ </member>
+ <member name="M:Ice.Communicator.getAdmin">
+ <summary>
+ Get a proxy to the main facet of the Admin object.
+ When Ice.Admin.DelayCreation
+ is greater than 0, it is necessary to call getAdmin() after the communicator is
+ initialized to create the Admin object. Otherwise, the Admin object is created
+ automatically after all the plug-ins are initialized.
+
+ </summary>
+ <returns>The main ("") facet of the Admin object; a null proxy if no
+ Admin object is configured.</returns>
+ </member>
+ <member name="M:Ice.Communicator.addAdminFacet(Ice.Object,System.String)">
+ <summary>
+ Add a new facet to the Admin object.
+ Adding a servant with a facet that is already registered
+ throws AlreadyRegisteredException.
+
+ </summary>
+ <param name="servant">The servant that implements the new Admin facet.
+ </param>
+ <param name="facet">The new Admin facet.</param>
+ </member>
+ <member name="M:Ice.Communicator.removeAdminFacet(System.String)">
+ <summary>
+ Remove the following facet to the Admin object.
+ Removing a facet that was not previously registered throws
+ NotRegisteredException.
+
+ </summary>
+ <param name="facet">The Admin facet.
+ </param>
+ <returns>The servant associated with this Admin facet</returns>
+ </member>
+ <member name="T:Ice.AMI_Router_getClientProxy">
+ <summary>
+ Get the router's client proxy, i.e., the proxy to use for
+ forwarding requests from the client to the router.
+ </summary>
+ </member>
+ <member name="M:Ice.AMICallbackBase.ice_exception(Ice.Exception)">
+ <summary>
+ The Ice run time calls ice_exception when an asynchronous operation invocation
+ raises an Ice run-time exception.
+ </summary>
+ <param name="ex">The encoded Ice run-time exception raised by the operation.</param>
+ </member>
+ <member name="M:Ice.AMI_Router_getClientProxy.ice_response(Ice.ObjectPrx)">
+ <summary>
+ ice_response indicates that
+ the operation completed successfully.
+ </summary>
+ <param name="ret__">(return value) The router's client proxy.</param>
+ </member>
+ <member name="T:Ice.AMI_Router_addProxies">
+ <summary>
+ Add new proxy information to the router's routing table.
+ </summary>
+ </member>
+ <member name="M:Ice.AMI_Router_addProxies.ice_response(Ice.ObjectPrx[])">
+ <summary>
+ ice_response indicates that
+ the operation completed successfully.
+ </summary>
+ <param name="ret__">(return value) Proxies discarded by the router.</param>
+ </member>
+ <member name="M:Ice.Connection.close(System.Boolean)">
+ <summary>
+ Close a connection, either gracefully or forcefully.
+ If a
+ connection is closed forcefully, it closes immediately, without
+ sending the relevant close connection protocol messages to the
+ peer and waiting for the peer to acknowledge these protocol
+ messages.
+
+ </summary>
+ <param name="force">If true, close forcefully. Otherwise the
+ connection is closed gracefully.</param>
+ </member>
+ <member name="M:Ice.Connection.createProxy(Ice.Identity)">
+ <summary>
+ Create a special proxy that always uses this connection.
+ This
+ can be used for callbacks from a server to a client if the
+ server cannot directly establish a connection to the client,
+ for example because of firewalls. In this case, the server
+ would create a proxy using an already established connection
+ from the client.
+
+ </summary>
+ <param name="id">The identity for which a proxy is to be created.
+
+ </param>
+ <returns>A proxy that matches the given identity and uses this
+ connection.
+
+ </returns>
+ </member>
+ <member name="M:Ice.Connection.setAdapter(Ice.ObjectAdapter)">
+ <summary>
+ Explicitly set an object adapter that dispatches requests that
+ are received over this connection.
+ A client can invoke an
+ operation on a server using a proxy, and then set an object
+ adapter for the outgoing connection that is used by the proxy
+ in order to receive callbacks. This is useful if the server
+ cannot establish a connection back to the client, for example
+ because of firewalls.
+
+ </summary>
+ <param name="adapter">The object adapter that should be used by this
+ connection to dispatch requests. The object adapter must be
+ activated. When the object adapter is deactivated, it is
+ automatically removed from the connection.
+
+ </param>
+ </member>
+ <member name="M:Ice.Connection.getAdapter">
+ <summary>
+ Get the object adapter that dispatches requests for this
+ connection.
+ </summary>
+ <returns>The object adapter that dispatches requests for the
+ connection, or null if no adapter is set.
+
+ </returns>
+ </member>
+ <member name="M:Ice.Connection.getEndpoint">
+ <summary>
+ Get the endpoint from which the connection was created.
+ </summary>
+ <returns>The endpoint from which the connection was created.</returns>
+ </member>
+ <member name="M:Ice.Connection.flushBatchRequests">
+ <summary>
+ Flush any pending batch requests for this connection.
+ This
+ causes all batch requests that were sent via proxies that use
+ this connection to be sent to the server.
+ </summary>
+ </member>
+ <member name="M:Ice.Connection.type">
+ <summary>
+ Return the connection type.
+ This corresponds to the endpoint
+ type, i.e., "tcp", "udp", etc.
+
+ </summary>
+ <returns>The type of the connection.</returns>
+ </member>
+ <member name="M:Ice.Connection.timeout">
+ <summary>
+ Get the timeout for the connection.
+ </summary>
+ <returns>The connection's timeout.</returns>
+ </member>
+ <member name="M:Ice.Connection.ice_toString_">
+ <summary>
+ Return a description of the connection as human readable text,
+ suitable for logging or error messages.
+ </summary>
+ <returns>The description of the connection as human readable
+ text.</returns>
+ </member>
+ <member name="M:Ice.Connection.getInfo">
+ <summary>
+ Returns the connection information.
+ </summary>
+ <returns>The connection information.</returns>
+ </member>
+ <member name="T:Ice.Request">
+ <summary>
+ Interface for incoming requests.
+ </summary>
+ </member>
+ <member name="M:Ice.Request.isCollocated">
+ <summary>
+ Returns whether this request is collocated.
+ </summary>
+ <returns>True if the invocation was made via proxy created by the same communicator
+ that hosts the target's object adapter; false, otherwise.</returns>
+ </member>
+ <member name="M:Ice.Request.getCurrent">
+ <summary>
+ Returns the {@link Current} object for this the request.
+ </summary>
+ <returns>The Current object for this request.</returns>
+ </member>
+ <member name="T:Ice.DispatchInterceptor">
+ <summary>
+ Base class that allows a server intercept incoming requests.
+ The application must derive a concrete class from DispatchInterceptor
+ that implements the DispatchInterceptor.dispatch operation. An instance of this derived
+ class can be registered with an object adapter like any other servant.
+ A dispatch interceptor is useful particularly to automatically retry requests
+ that have failed due to a recoverable error condition.
+ </summary>
+ </member>
+ <member name="T:Ice.ObjectImpl">
+ <summary>
+ Base class for all Slice classes.
+ </summary>
+ </member>
+ <member name="T:Ice.Object">
+ <summary>
+ the base interface for servants.
+ </summary>
+ </member>
+ <member name="M:Ice.Object.ice_hash">
+ <summary>
+ This method is deprecated. Use GetHashCode instead.
+ </summary>
+ </member>
+ <member name="M:Ice.Object.ice_isA(System.String)">
+ <summary>
+ Tests whether this object supports a specific Slice interface.
+ </summary>
+
+ <param name="s">The type ID of the Slice interface to test against.</param>
+ <returns>True if this object has the interface
+ specified by s or derives from the interface specified by s.</returns>
+ </member>
+ <member name="M:Ice.Object.ice_isA(System.String,Ice.Current)">
+ <summary>
+ Tests whether this object supports a specific Slice interface.
+ </summary>
+
+ <param name="s">The type ID of the Slice interface to test against.</param>
+ <param name="current">The Current object for the invocation.</param>
+ <returns>True if this object has the interface
+ specified by s or derives from the interface specified by s.</returns>
+ </member>
+ <member name="M:Ice.Object.ice_ping">
+ <summary>
+ Tests whether this object can be reached.
+ </summary>
+ </member>
+ <member name="M:Ice.Object.ice_ping(Ice.Current)">
+ <summary>
+ Tests whether this object can be reached.
+ </summary>
+ <param name="current">The Current object for the invocation.</param>
+ </member>
+ <member name="M:Ice.Object.ice_ids">
+ <summary>
+ Returns the Slice type IDs of the interfaces supported by this object.
+ </summary>
+ <returns>The Slice type IDs of the interfaces supported by this object, in base-to-derived
+ order. The first element of the returned array is always ::Ice::Object.</returns>
+ </member>
+ <member name="M:Ice.Object.ice_ids(Ice.Current)">
+ <summary>
+ Returns the Slice type IDs of the interfaces supported by this object.
+ </summary>
+ <param name="current">The Current object for the invocation.</param>
+ <returns>The Slice type IDs of the interfaces supported by this object, in base-to-derived
+ order. The first element of the returned array is always ::Ice::Object.</returns>
+ </member>
+ <member name="M:Ice.Object.ice_id">
+ <summary>
+ Returns the Slice type ID of the most-derived interface supported by this object.
+ </summary>
+ <returns>The Slice type ID of the most-derived interface.</returns>
+ </member>
+ <member name="M:Ice.Object.ice_id(Ice.Current)">
+ <summary>
+ Returns the Slice type ID of the most-derived interface supported by this object.
+ </summary>
+ <param name="current">The Current object for the invocation.</param>
+ <returns>The Slice type ID of the most-derived interface.</returns>
+ </member>
+ <member name="M:Ice.Object.ice_preMarshal">
+ <summary>
+ The Ice run time invokes this method prior to marshaling an object's data members. This allows a subclass
+ to override this method in order to validate its data members.
+ </summary>
+ </member>
+ <member name="M:Ice.Object.ice_postUnmarshal">
+ <summary>
+ This Ice run time invokes this method vafter unmarshaling an object's data members. This allows a
+ subclass to override this method in order to perform additional initialization.
+ </summary>
+ </member>
+ <member name="M:Ice.Object.ice_dispatch(Ice.Request,Ice.DispatchInterceptorAsyncCallback)">
+ <summary>
+ Dispatches an invocation to a servant. This method is used by dispatch interceptors to forward an invocation
+ to a servant (or to another interceptor).
+ </summary>
+ <param name="request">The details of the invocation.</param>
+ <param name="cb">The callback object for asynchchronous dispatch. For synchronous dispatch,
+ the callback object must be null.</param>
+ <returns>The dispatch status for the operation.</returns>
+ </member>
+ <member name="M:Ice.Object.ice_dispatch(Ice.Request)">
+ <summary>
+ Dispatches an invocation to a servant. This method is used by dispatch interceptors to forward an invocation
+ to a servant (or to another interceptor).
+ </summary>
+ <param name="request">The details of the invocation.</param>
+ <returns>The dispatch status for the operation.</returns>
+ </member>
+ <member name="M:Ice.ObjectImpl.#ctor">
+ <summary>
+ Instantiates an Ice object.
+ </summary>
+ </member>
+ <member name="M:Ice.ObjectImpl.ice_hash">
+ <summary>
+ This method is deprecated. Use GetHashCode instead.
+ </summary>
+ </member>
+ <member name="M:Ice.ObjectImpl.Clone">
+ <summary>
+ Returns a copy of the object. The cloned object contains field-for-field copies
+ of the state.
+ </summary>
+ <returns>The cloned object.</returns>
+ </member>
+ <member name="M:Ice.ObjectImpl.ice_isA(System.String)">
+ <summary>
+ Tests whether this object supports a specific Slice interface.
+ </summary>
+ <param name="s">The type ID of the Slice interface to test against.</param>
+ <returns>The return value is true if s is ::Ice::Object.</returns>
+ </member>
+ <member name="M:Ice.ObjectImpl.ice_isA(System.String,Ice.Current)">
+ <summary>
+ Tests whether this object supports a specific Slice interface.
+ </summary>
+ <param name="s">The type ID of the Slice interface to test against.</param>
+ <param name="current">The Current object for the invocation.</param>
+ <returns>The return value is true if s is ::Ice::Object.</returns>
+ </member>
+ <member name="M:Ice.ObjectImpl.ice_ping">
+ <summary>
+ Tests whether this object can be reached.
+ </summary>
+ </member>
+ <member name="M:Ice.ObjectImpl.ice_ping(Ice.Current)">
+ <summary>
+ Tests whether this object can be reached.
+ <param name="current">The Current object for the invocation.</param>
+ </summary>
+ </member>
+ <member name="M:Ice.ObjectImpl.ice_ids">
+ <summary>
+ Returns the Slice type IDs of the interfaces supported by this object.
+ </summary>
+ <returns>An array whose only element is ::Ice::Object.</returns>
+ </member>
+ <member name="M:Ice.ObjectImpl.ice_ids(Ice.Current)">
+ <summary>
+ Returns the Slice type IDs of the interfaces supported by this object.
+ </summary>
+ <param name="current">The Current object for the invocation.</param>
+ <returns>An array whose only element is ::Ice::Object.</returns>
+ </member>
+ <member name="M:Ice.ObjectImpl.ice_id">
+ <summary>
+ Returns the Slice type ID of the most-derived interface supported by this object.
+ </summary>
+ <returns>The return value is always ::Ice::Object.</returns>
+ </member>
+ <member name="M:Ice.ObjectImpl.ice_id(Ice.Current)">
+ <summary>
+ Returns the Slice type ID of the most-derived interface supported by this object.
+ </summary>
+ <param name="current">The Current object for the invocation.</param>
+ <returns>The return value is always ::Ice::Object.</returns>
+ </member>
+ <member name="M:Ice.ObjectImpl.ice_staticId">
+ <summary>
+ Returns the Slice type ID of the interface supported by this object.
+ </summary>
+ <returns>The return value is always ::Ice::Object.</returns>
+ </member>
+ <member name="M:Ice.ObjectImpl.ice_preMarshal">
+ <summary>
+ The Ice run time invokes this method prior to marshaling an object's data members. This allows a subclass
+ to override this method in order to validate its data members.
+ </summary>
+ </member>
+ <member name="M:Ice.ObjectImpl.ice_postUnmarshal">
+ <summary>
+ This Ice run time invokes this method vafter unmarshaling an object's data members. This allows a
+ subclass to override this method in order to perform additional initialization.
+ </summary>
+ </member>
+ <member name="M:Ice.ObjectImpl.ice_dispatch(Ice.Request,Ice.DispatchInterceptorAsyncCallback)">
+ <summary>
+ Dispatches an invocation to a servant. This method is used by dispatch interceptors to forward an invocation
+ to a servant (or to another interceptor).
+ </summary>
+ <param name="request">The details of the invocation.</param>
+ <param name="cb">The callback object for asynchchronous dispatch. For synchronous dispatch, the
+ callback object must be null.</param>
+ <returns>The dispatch status for the operation.</returns>
+ </member>
+ <member name="M:Ice.ObjectImpl.ice_dispatch(Ice.Request)">
+ <summary>
+ Dispatches an invocation to a servant. This method is used by dispatch interceptors to forward an invocation
+ to a servant (or to another interceptor).
+ </summary>
+ <param name="request">The details of the invocation.</param>
+ <returns>The dispatch status for the operation.</returns>
+ </member>
+ <member name="M:Ice.DispatchInterceptor.dispatch(Ice.Request)">
+ <summary>
+ Called by the Ice run time to dispatch an incoming request. The implementation
+ of <code>dispatch</code> must dispatch the request to the actual servant.
+ </summary>
+ <param name="request">The details of the incoming request.</param>
+ <returns>For synchronous dispatch, the return value must be whatever is
+ returned ice_dispatch. For asynchronous dispatch, the return
+ value must be DispatchAsync.</returns>
+ </member>
+ <member name="M:Ice.Endpoint.ice_toString_">
+ <summary>
+ Return a string representation of the endpoint.
+ </summary>
+ <returns>The string representation of the endpoint.</returns>
+ </member>
+ <member name="M:Ice.Endpoint.getInfo">
+ <summary>
+ Returns the endpoint information.
+ </summary>
+ <returns>The endpoint information class.</returns>
+ </member>
+ <member name="T:Ice.Exception">
+ <summary>
+ Base class for Ice exceptions.
+ </summary>
+ </member>
+ <member name="M:Ice.Exception.Clone">
+ <summary>
+ Creates and returns a copy of this exception.
+ </summary>
+ <returns>A copy of this exception.</returns>
+ </member>
+ <member name="M:Ice.Exception.#ctor">
+ <summary>
+ Creates a default-initialized exception.
+ </summary>
+ </member>
+ <member name="M:Ice.Exception.#ctor(System.Exception)">
+ <summary>
+ Creates a default-initialized exception and sets the InnerException
+ property to the passed exception.
+ </summary>
+ <param name="ex">The inner exception.</param>
+ </member>
+ <member name="M:Ice.Exception.ice_name">
+ <summary>
+ Returns the name of this exception.
+ </summary>
+ <returns>The name of this exception.</returns>
+ </member>
+ <member name="M:Ice.Exception.ToString">
+ <summary>
+ Returns a string representation of this exception, including
+ any inner exceptions.
+ </summary>
+ <returns>The string representation of this exception.</returns>
+ </member>
+ <member name="T:Ice.LocalException">
+ <summary>
+ Base class for local exceptions.
+ </summary>
+ </member>
+ <member name="M:Ice.LocalException.#ctor">
+ <summary>
+ Creates a default-initialized local exception.
+ </summary>
+ </member>
+ <member name="M:Ice.LocalException.#ctor(System.Exception)">
+ <summary>
+ Creates a default-initialized local exception and sets the InnerException
+ property to the passed exception.
+ </summary>
+ <param name="ex">The inner exception.</param>
+ </member>
+ <member name="T:Ice.SystemException">
+ <summary>
+ Base class for Ice run-time exceptions.
+ </summary>
+ </member>
+ <member name="M:Ice.SystemException.#ctor">
+ <summary>
+ Creates a default-initialized run-time exception.
+ </summary>
+ </member>
+ <member name="M:Ice.SystemException.#ctor(System.Exception)">
+ <summary>
+ Creates a default-initialized run-time exception and sets the InnerException
+ property to the passed exception.
+ </summary>
+ <param name="ex">The inner exception.</param>
+ </member>
+ <member name="T:Ice.UserException">
+ <summary>
+ Base class for Slice user exceptions.
+ </summary>
+ </member>
+ <member name="M:Ice.UserException.#ctor">
+ <summary>
+ Creates a default-initialized user exception.
+ </summary>
+ </member>
+ <member name="M:Ice.UserException.#ctor(System.Exception)">
+ <summary>
+ Creates a default-initialized user exception and sets the InnerException
+ property to the passed exception.
+ </summary>
+ <param name="ex">The inner exception.</param>
+ </member>
+ <member name="M:Ice.ImplicitContext.getContext">
+ <summary>
+ Get a copy of the underlying context.
+ </summary>
+ <returns>A copy of the underlying context.</returns>
+ </member>
+ <member name="M:Ice.ImplicitContext.setContext(System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Set the underlying context.
+ </summary>
+ <param name="newContext">The new context.</param>
+ </member>
+ <member name="M:Ice.ImplicitContext.containsKey(System.String)">
+ <summary>
+ Check if this key has an associated value in the underlying context.
+ </summary>
+ <param name="key">The key.
+
+ </param>
+ <returns>True if the key has an associated value, False otherwise.</returns>
+ </member>
+ <member name="M:Ice.ImplicitContext.get(System.String)">
+ <summary>
+ Get the value associated with the given key in the underlying context.
+ Returns an empty string if no value is associated with the key.
+ containsKey allows you to distinguish between an empty-string value and
+ no value at all.
+
+ </summary>
+ <param name="key">The key.
+
+ </param>
+ <returns>The value associated with the key.</returns>
+ </member>
+ <member name="M:Ice.ImplicitContext.put(System.String,System.String)">
+ <summary>
+ Create or update a key/value entry in the underlying context.
+ </summary>
+ <param name="key">The key.
+
+ </param>
+ <param name="value">The value.
+
+ </param>
+ <returns>The previous value associated with the key, if any.</returns>
+ </member>
+ <member name="M:Ice.ImplicitContext.remove(System.String)">
+ <summary>
+ Remove the entry for the given key in the underlying context.
+ </summary>
+ <param name="key">The key.
+
+ </param>
+ <returns>The value associated with the key, if any.</returns>
+ </member>
+ <member name="T:Ice.AMD_Object_ice_invoke">
+ <summary>
+ Callback interface for Blobject AMD servants.
+ </summary>
+ </member>
+ <member name="M:Ice.AMD_Object_ice_invoke.ice_response(System.Boolean,System.Byte[])">
+ <summary>
+ Indicates to the Ice run time that an operation
+ completed.
+ </summary>
+ <param name="ok">True indicates that the operation
+ completed successfully; false indicates that the
+ operation raised a user exception.</param>
+ <param name="outParams">The encoded out-parameters for the operation or,
+ if ok is false, the encoded user exception.</param>
+ </member>
+ <member name="T:Ice.LocalObject">
+ <summary>
+ This interface is deprecated. use System.Object (or nothing) instead.
+ </summary>
+ </member>
+ <member name="T:Ice.LocalObjectImpl">
+ <summary>
+ This class is deprecated. Use System.Object (or nothing) instead.
+ </summary>
+ </member>
+ <member name="T:Ice.AMI_Locator_findObjectById">
+ <summary>
+ Find an object by identity and return its proxy.
+ </summary>
+ </member>
+ <member name="M:Ice.AMI_Locator_findObjectById.ice_response(Ice.ObjectPrx)">
+ <summary>
+ ice_response indicates that
+ the operation completed successfully.
+ </summary>
+ <param name="ret__">(return value) The proxy, or null if the object is not active.
+
+ </param>
+ </member>
+ <member name="T:Ice.AMI_Locator_findAdapterById">
+ <summary>
+ Find an adapter by id and return its proxy (a dummy direct
+ proxy created by the adapter).
+ </summary>
+ </member>
+ <member name="M:Ice.AMI_Locator_findAdapterById.ice_response(Ice.ObjectPrx)">
+ <summary>
+ ice_response indicates that
+ the operation completed successfully.
+ </summary>
+ <param name="ret__">(return value) The adapter proxy, or null if the adapter is not active.
+
+ </param>
+ </member>
+ <member name="M:Ice.Logger.print(System.String)">
+ <summary>
+ Print a message.
+ The message is printed literally, without
+ any decorations such as executable name or time stamp.
+ </summary>
+ </member>
+ <member name="M:Ice.Logger.trace(System.String,System.String)">
+ <summary>
+ Log a trace message.
+ </summary>
+ <param name="category">The trace category.
+
+ </param>
+ <param name="message">The trace message to log.</param>
+ </member>
+ <member name="M:Ice.Logger.warning(System.String)">
+ <summary>
+ Log a warning message.
+ </summary>
+ <param name="message">The warning message to log.
+
+ </param>
+ </member>
+ <member name="M:Ice.Logger.error(System.String)">
+ <summary>
+ Log an error message.
+ </summary>
+ <param name="message">The error message to log.
+
+ </param>
+ </member>
+ <member name="M:Ice.Logger.cloneWithPrefix(System.String)">
+ <summary>
+ Returns a clone of the logger with a new prefix.
+ </summary>
+ <param name="prefix">The new prefix for the logger.</param>
+ </member>
+ <member name="T:Ice.LoggerPlugin">
+ <summary>
+ Class to support custom loggers. Applications using a custom logger
+ instantiate a LoggerPlugin with a custom logger and
+ return the instance from their PluginFactory implementation.
+ </summary>
+ </member>
+ <member name="M:Ice.Plugin.initialize">
+ <summary>
+ Perform any necessary initialization steps.
+ </summary>
+ </member>
+ <member name="M:Ice.Plugin.destroy">
+ <summary>
+ Called when the communicator is being destroyed.
+ </summary>
+ </member>
+ <member name="M:Ice.LoggerPlugin.#ctor(Ice.Communicator,Ice.Logger)">
+ <summary>
+ Installs a custom logger for a communicator.
+ </summary>
+ <param name="communicator">The communicator using the custom logger.</param>
+ <param name="logger">The custom logger for the communicator.</param>
+ </member>
+ <member name="M:Ice.LoggerPlugin.initialize">
+ <summary>
+ Called by the Ice run time during communicator initialization. The derived class
+ can override this method to perform any initialization that might be required
+ by a custom logger.
+ </summary>
+ </member>
+ <member name="M:Ice.LoggerPlugin.destroy">
+ <summary>
+ Called by the Ice run time when the communicator is destroyed. The derived class
+ can override this method to perform any finalization that might be required
+ by a custom logger.
+ </summary>
+ </member>
+ <member name="M:Ice.ObjectAdapter.getName">
+ <summary>
+ Get the name of this object adapter.
+ </summary>
+ <returns>This object adapter's name.</returns>
+ </member>
+ <member name="M:Ice.ObjectAdapter.getCommunicator">
+ <summary>
+ Get the communicator this object adapter belongs to.
+ </summary>
+ <returns>This object adapter's communicator.
+
+ </returns>
+ </member>
+ <member name="M:Ice.ObjectAdapter.activate">
+ <summary>
+ Activate all endpoints that belong to this object adapter.
+ After activation, the object adapter can dispatch requests
+ received through its endpoints.
+
+ </summary>
+ </member>
+ <member name="M:Ice.ObjectAdapter.hold">
+ <summary>
+ Temporarily hold receiving and dispatching requests.
+ The object
+ adapter can be reactivated with the activate operation.
+
+ Holding is not immediate, i.e., after hold
+ returns, the object adapter might still be active for some
+ time. You can use waitForHold to wait until holding is
+ complete.
+
+ </summary>
+ </member>
+ <member name="M:Ice.ObjectAdapter.waitForHold">
+ <summary>
+ Wait until the object adapter holds requests.
+ Calling hold
+ initiates holding of requests, and waitForHold only returns
+ when holding of requests has been completed.
+
+ </summary>
+ </member>
+ <member name="M:Ice.ObjectAdapter.deactivate">
+ <summary>
+ Deactivate all endpoints that belong to this object adapter.
+ After deactivation, the object adapter stops receiving
+ requests through its endpoints. Object adapters that have been
+ deactivated must not be reactivated again, and cannot be used
+ otherwise. Attempts to use a deactivated object adapter raise
+ ObjectAdapterDeactivatedException; however, attempts to
+ deactivate an already deactivated object adapter are
+ ignored and do nothing. Once deactivated, it is possible to
+ destroy the adapter to clean up resources and then create and
+ activate a new adapter with the same name.
+
+ After deactivate returns, no new requests
+ are processed by the object adapter. However, requests that
+ have been started before deactivate was called might
+ still be active. You can use waitForDeactivate to wait
+ for the completion of all requests for this object adapter.
+
+ </summary>
+ </member>
+ <member name="M:Ice.ObjectAdapter.waitForDeactivate">
+ <summary>
+ Wait until the object adapter has deactivated.
+ Calling
+ deactivate initiates object adapter deactivation, and
+ waitForDeactivate only returns when deactivation has
+ been completed.
+
+ </summary>
+ </member>
+ <member name="M:Ice.ObjectAdapter.isDeactivated">
+ <summary>
+ Check whether object adapter has been deactivated.
+ </summary>
+ <returns>Whether adapter has been deactivated.
+
+ </returns>
+ </member>
+ <member name="M:Ice.ObjectAdapter.destroy">
+ <summary>
+ Destroys the object adapter and cleans up all resources held by
+ the object adapter.
+ If the object adapter has not yet been
+ deactivated, destroy implicitly initiates the deactivation
+ and waits for it to finish. Subsequent calls to destroy are
+ ignored. Once destroy has returned, it is possible to create
+ another object adapter with the same name.
+
+ </summary>
+ </member>
+ <member name="M:Ice.ObjectAdapter.add(Ice.Object,Ice.Identity)">
+ <summary>
+ Add a servant to this object adapter's Active Servant Map.
+ Note
+ that one servant can implement several Ice objects by registering
+ the servant with multiple identities. Adding a servant with an
+ identity that is in the map already throws AlreadyRegisteredException.
+
+ </summary>
+ <param name="servant">The servant to add.
+
+ </param>
+ <param name="id">The identity of the Ice object that is implemented by
+ the servant.
+
+ </param>
+ <returns>A proxy that matches the given identity and this object
+ adapter.
+
+ </returns>
+ </member>
+ <member name="M:Ice.ObjectAdapter.addFacet(Ice.Object,Ice.Identity,System.String)">
+ <summary>
+ Like add, but with a facet.
+ Calling add(servant, id)
+ is equivalent to calling addFacet with an empty facet.
+
+ </summary>
+ <param name="servant">The servant to add.
+
+ </param>
+ <param name="id">The identity of the Ice object that is implemented by
+ the servant.
+
+ </param>
+ <param name="facet">The facet. An empty facet means the default facet.
+
+ </param>
+ <returns>A proxy that matches the given identity, facet, and
+ this object adapter.
+
+ </returns>
+ </member>
+ <member name="M:Ice.ObjectAdapter.addWithUUID(Ice.Object)">
+ <summary>
+ Add a servant to this object adapter's Active Servant Map,
+ using an automatically generated UUID as its identity.
+ Note that
+ the generated UUID identity can be accessed using the proxy's
+ ice_getIdentity operation.
+
+ </summary>
+ <param name="servant">The servant to add.
+
+ </param>
+ <returns>A proxy that matches the generated UUID identity and
+ this object adapter.
+
+ </returns>
+ </member>
+ <member name="M:Ice.ObjectAdapter.addFacetWithUUID(Ice.Object,System.String)">
+ <summary>
+ Like addWithUUID, but with a facet.
+ Calling
+ addWithUUID(servant) is equivalent to calling
+ addFacetWithUUID with an empty facet.
+
+ </summary>
+ <param name="servant">The servant to add.
+
+ </param>
+ <param name="facet">The facet. An empty facet means the default
+ facet.
+
+ </param>
+ <returns>A proxy that matches the generated UUID identity,
+ facet, and this object adapter.
+
+ </returns>
+ </member>
+ <member name="M:Ice.ObjectAdapter.addDefaultServant(Ice.Object,System.String)">
+ <summary>
+ Add a default servant to handle requests for a specific
+ category.
+ Adding a default servant for a category for
+ which a default servant is already registered throws
+ AlreadyRegisteredException. To dispatch operation
+ calls on servants, the object adapter tries to find a servant
+ for a given Ice object identity and facet in the following
+ order:
+
+
+
+ The object adapter tries to find a servant for the identity
+ and facet in the Active Servant Map.
+
+ If no servant has been found in the Active Servant Map, the
+ object adapter tries to find a default servant for the category
+ component of the identity.
+
+ If no servant has been found by any of the preceding steps,
+ the object adapter tries to find a default servant for an empty
+ category, regardless of the category contained in the identity.
+
+ If no servant has been found by any of the preceding steps,
+ the object adapter gives up and the caller receives
+ ObjectNotExistException or FacetNotExistException.
+
+
+
+ </summary>
+ <param name="servant">The default servant.
+
+ </param>
+ <param name="category">The category for which the default servant is
+ registered. An empty category means it will handle all categories.
+
+ </param>
+ </member>
+ <member name="M:Ice.ObjectAdapter.remove(Ice.Identity)">
+ <summary>
+ Remove a servant (that is, the default facet) from the object
+ adapter's Active Servant Map.
+ </summary>
+ <param name="id">The identity of the Ice object that is implemented by
+ the servant. If the servant implements multiple Ice objects,
+ remove has to be called for all those Ice objects.
+ Removing an identity that is not in the map throws
+ NotRegisteredException.
+
+ </param>
+ <returns>The removed servant.
+
+ </returns>
+ </member>
+ <member name="M:Ice.ObjectAdapter.removeFacet(Ice.Identity,System.String)">
+ <summary>
+ Like remove, but with a facet.
+ Calling remove(id)
+ is equivalent to calling removeFacet with an empty facet.
+
+ </summary>
+ <param name="id">The identity of the Ice object that is implemented by
+ the servant.
+
+ </param>
+ <param name="facet">The facet. An empty facet means the default facet.
+
+ </param>
+ <returns>The removed servant.
+
+ </returns>
+ </member>
+ <member name="M:Ice.ObjectAdapter.removeAllFacets(Ice.Identity)">
+ <summary>
+ Remove all facets with the given identity from the Active
+ Servant Map.
+ The operation completely removes the Ice object,
+ including its default facet. Removing an identity that
+ is not in the map throws NotRegisteredException.
+
+ </summary>
+ <param name="id">The identity of the Ice object to be removed.
+
+ </param>
+ <returns>A collection containing all the facet names and
+ servants of the removed Ice object.
+
+ </returns>
+ </member>
+ <member name="M:Ice.ObjectAdapter.removeDefaultServant(System.String)">
+ <summary>
+ Remove the default servant for a specific category.
+ Attempting
+ to remove a default servant for a category that is not
+ registered throws NotRegisteredException.
+
+ </summary>
+ <param name="category">The category of the default servant to remove.
+
+ </param>
+ <returns>The default servant.
+
+ </returns>
+ </member>
+ <member name="M:Ice.ObjectAdapter.find(Ice.Identity)">
+ <summary>
+ Look up a servant in this object adapter's Active Servant Map
+ by the identity of the Ice object it implements.
+ This operation only tries to look up a servant in
+ the Active Servant Map. It does not attempt to find a servant
+ by using any installed ServantLocator.
+
+ </summary>
+ <param name="id">The identity of the Ice object for which the servant
+ should be returned.
+
+ </param>
+ <returns>The servant that implements the Ice object with the
+ given identity, or null if no such servant has been found.
+
+ </returns>
+ </member>
+ <member name="M:Ice.ObjectAdapter.findFacet(Ice.Identity,System.String)">
+ <summary>
+ Like find, but with a facet.
+ Calling find(id)
+ is equivalent to calling findFacet with an empty
+ facet.
+
+ </summary>
+ <param name="id">The identity of the Ice object for which the
+ servant should be returned.
+
+ </param>
+ <param name="facet">The facet. An empty facet means the default
+ facet.
+
+ </param>
+ <returns>The servant that implements the Ice object with the
+ given identity and facet, or null if no such servant has been
+ found.
+
+ </returns>
+ </member>
+ <member name="M:Ice.ObjectAdapter.findAllFacets(Ice.Identity)">
+ <summary>
+ Find all facets with the given identity in the Active Servant
+ Map.
+ </summary>
+ <param name="id">The identity of the Ice object for which the facets
+ should be returned.
+
+ </param>
+ <returns>A collection containing all the facet names and
+ servants that have been found, or an empty map if there is no
+ facet for the given identity.
+
+ </returns>
+ </member>
+ <member name="M:Ice.ObjectAdapter.findByProxy(Ice.ObjectPrx)">
+ <summary>
+ Look up a servant in this object adapter's Active Servant Map,
+ given a proxy.
+ This operation only tries to lookup a servant in
+ the Active Servant Map. It does not attempt to find a servant
+ by using any installed ServantLocator.
+
+ </summary>
+ <param name="proxy">The proxy for which the servant should be returned.
+
+ </param>
+ <returns>The servant that matches the proxy, or null if no such
+ servant has been found.
+
+ </returns>
+ </member>
+ <member name="M:Ice.ObjectAdapter.addServantLocator(Ice.ServantLocator,System.String)">
+ <summary>
+ Add a Servant Locator to this object adapter.
+ Adding a servant
+ locator for a category for which a servant locator is already
+ registered throws AlreadyRegisteredException. To dispatch
+ operation calls on servants, the object adapter tries to find a
+ servant for a given Ice object identity and facet in the
+ following order:
+
+
+
+ The object adapter tries to find a servant for the identity
+ and facet in the Active Servant Map.
+
+ If no servant has been found in the Active Servant Map,
+ the object adapter tries to find a servant locator for the
+ category component of the identity. If a locator is found, the
+ object adapter tries to find a servant using this locator.
+
+ If no servant has been found by any of the preceding steps,
+ the object adapter tries to find a locator for an empty category,
+ regardless of the category contained in the identity. If a
+ locator is found, the object adapter tries to find a servant
+ using this locator.
+
+ If no servant has been found by any of the preceding steps,
+ the object adapter gives up and the caller receives
+ ObjectNotExistException or FacetNotExistException.
+
+
+
+ Only one locator for the empty category can be
+ installed.
+
+ </summary>
+ <param name="locator">The locator to add.
+
+ </param>
+ <param name="category">The category for which the Servant Locator can
+ locate servants, or an empty string if the Servant Locator does
+ not belong to any specific category.
+
+ </param>
+ </member>
+ <member name="M:Ice.ObjectAdapter.removeServantLocator(System.String)">
+ <summary>
+ Remove a Servant Locator from this object adapter.
+ </summary>
+ <param name="category">The category for which the Servant Locator can
+ locate servants, or an empty string if the Servant Locator does
+ not belong to any specific category.
+
+ </param>
+ <returns>The Servant Locator, or throws NotRegisteredException
+ if no Servant Locator was found for the given category.
+
+ </returns>
+ </member>
+ <member name="M:Ice.ObjectAdapter.findServantLocator(System.String)">
+ <summary>
+ Find a Servant Locator installed with this object adapter.
+ </summary>
+ <param name="category">The category for which the Servant Locator can
+ locate servants, or an empty string if the Servant Locator does
+ not belong to any specific category.
+
+ </param>
+ <returns>The Servant Locator, or null if no Servant Locator was
+ found for the given category.
+
+ </returns>
+ </member>
+ <member name="M:Ice.ObjectAdapter.findDefaultServant(System.String)">
+ <summary>
+ Find the default servant for a specific category.
+ </summary>
+ <param name="category">The category of the default servant to find.
+
+ </param>
+ <returns>The default servant or null if no default servant was
+ registered for the category.
+
+ </returns>
+ </member>
+ <member name="M:Ice.ObjectAdapter.createProxy(Ice.Identity)">
+ <summary>
+ Create a proxy for the object with the given identity.
+ If this
+ object adapter is configured with an adapter id, the return
+ value is an indirect proxy that refers to the adapter id. If
+ a replica group id is also defined, the return value is an
+ indirect proxy that refers to the replica group id. Otherwise,
+ if no adapter id is defined, the return value is a direct
+ proxy containing this object adapter's published endpoints.
+
+ </summary>
+ <param name="id">The object's identity.
+
+ </param>
+ <returns>A proxy for the object with the given identity.
+
+ </returns>
+ </member>
+ <member name="M:Ice.ObjectAdapter.createDirectProxy(Ice.Identity)">
+ <summary>
+ Create a direct proxy for the object with the given identity.
+ The returned proxy contains this object adapter's published
+ endpoints.
+
+ </summary>
+ <param name="id">The object's identity.
+
+ </param>
+ <returns>A proxy for the object with the given identity.
+
+ </returns>
+ </member>
+ <member name="M:Ice.ObjectAdapter.createIndirectProxy(Ice.Identity)">
+ <summary>
+ Create an indirect proxy for the object with the given identity.
+ If this object adapter is configured with an adapter id, the
+ return value refers to the adapter id. Otherwise, the return
+ value contains only the object identity.
+
+ </summary>
+ <param name="id">The object's identity.
+
+ </param>
+ <returns>A proxy for the object with the given identity.
+
+ </returns>
+ </member>
+ <member name="M:Ice.ObjectAdapter.setLocator(Ice.LocatorPrx)">
+ <summary>
+ Set an Ice locator for this object adapter.
+ By doing so, the
+ object adapter will register itself with the locator registry
+ when it is activated for the first time. Furthermore, the proxies
+ created by this object adapter will contain the adapter name
+ instead of its endpoints.
+
+ </summary>
+ <param name="loc">The locator used by this object adapter.
+
+ </param>
+ </member>
+ <member name="M:Ice.ObjectAdapter.refreshPublishedEndpoints">
+ <summary>
+ Refresh the set of published endpoints.
+ The run time re-reads
+ the PublishedEndpoints property if it is set and re-reads the
+ list of local interfaces if the adapter is configured to listen
+ on all endpoints. This operation is useful to refresh the endpoint
+ information that is published in the proxies that are created by
+ an object adapter if the network interfaces used by a host changes.
+ </summary>
+ </member>
+ <member name="M:Ice.ObjectAdapter.getEndpoints">
+ <summary>
+ Get the set of endpoints configured with this object adapter.
+ </summary>
+ <returns>The set of endpoints.
+
+ </returns>
+ </member>
+ <member name="M:Ice.ObjectAdapter.getPublishedEndpoints">
+ <summary>
+ Get the set of endpoints that proxies created by this object
+ adapter will contain.
+ </summary>
+ <returns>The set of published endpoints.
+
+ </returns>
+ </member>
+ <member name="T:Ice.DispatchStatus">
+ <summary>
+ Indicates the status of operation dispatch.
+ </summary>
+ </member>
+ <member name="F:Ice.DispatchStatus.DispatchOK">
+ <summary>
+ Indicates that an operation was dispatched synchronously and successfully.
+ </summary>
+ </member>
+ <member name="F:Ice.DispatchStatus.DispatchUserException">
+ <summary>
+ Indicates that an operation was dispatched synchronously and raised a user exception.
+ </summary>
+ </member>
+ <member name="F:Ice.DispatchStatus.DispatchAsync">
+ <summary>
+ Indicates that an operation was dispatched asynchronously.
+ </summary>
+ </member>
+ <member name="T:Ice.Blobject">
+ <summary>
+ Base class for dynamic dispatch servants. A server application
+ derives a concrete servant class from Blobject that
+ implements the Blobject.ice_invoke method.
+ </summary>
+ </member>
+ <member name="M:Ice.Blobject.ice_invoke(System.Byte[],System.Byte[]@,Ice.Current)">
+ <summary>
+ Dispatch an incoming request.
+ </summary>
+ <param name="inParams">The encoded in-parameters for the operation.</param>
+ <param name="outParams">The encoded out-paramaters and return value
+ for the operation. The return value follows any out-parameters.</param>
+ <param name="current">The Current object to pass to the operation.</param>
+ <returns>If the operation completed successfully, the return value
+ is true. If the operation raises a user exception,
+ the return value is false; in this case, outParams
+ must contain the encoded user exception. If the operation raises an
+ Ice run-time exception, it must throw it directly.</returns>
+ </member>
+ <member name="M:Ice.EndpointInfo.type">
+ <summary>
+ Returns the type of the endpoint.
+ </summary>
+ </member>
+ <member name="M:Ice.EndpointInfo.datagram">
+ <summary>
+ Returns true if this endpoint is a datagram endpoint.
+ </summary>
+ </member>
+ <member name="M:Ice.EndpointInfo.secure">
+ <summary>
+ Returns true if this endpoint is a secure endpoint.
+ </summary>
+ </member>
+ <member name="T:Ice.AsyncCallback">
+
+ <summary>
+ Callback that requires the application to down-cast the proxy.
+ </summary>
+
+ </member>
+ <member name="T:Ice.OnewayCallback">
+
+ <summary>
+ Callback for the successful completion of an operation
+ that returns no data.
+ </summary>
+
+ </member>
+ <member name="T:Ice.SentCallback">
+
+ <summary>
+ Callback for the successful completion of an operation
+ that returns no data.
+ </summary>
+
+ </member>
+ <member name="T:Ice.ExceptionCallback">
+
+ <summary>
+ Called when an invocation raises an exception.
+ </summary>
+
+ </member>
+ <member name="T:Ice.AsyncResult">
+
+ <summary>
+ <!-- TODO -->
+ </summary>
+ </member>
+ <member name="T:Ice.AMISentCallback">
+ <summary>
+ Deprecated callback interface for AMI invocations. This is useful
+ for applications that send asynchronous invocations that
+ might not be sent for some time and, therefore, are
+ queued in the Ice run time for transmission.
+ The Ice run time calls ice_sent if an
+ an AMI invocation cannot be written to the transport and was
+ queued for later transmission. Applications that need to
+ implement flow control for AMI invocations can implement
+ this interface on the corresponding AMI callback object.
+ </summary>
+ </member>
+ <member name="M:Ice.AMISentCallback.ice_sent">
+ <summary>
+ Indicates to the caller of an AMI operation that
+ the invocation was queued for later transmission.
+ </summary>
+ </member>
+ <member name="T:Ice.ReadObjectCallback">
+ <summary>
+ Callback class to inform an application when a Slice class has been unmarshaled
+ from an input stream.
+ </summary>
+ </member>
+ <member name="M:Ice.ReadObjectCallback.invoke(Ice.Object)">
+ <summary>
+ The Ice run time calls this method when it has fully unmarshaled the state
+ of a Slice class.
+ </summary>
+ <param name="obj">The unmarshaled Slice class.</param>
+ </member>
+ <member name="T:Ice.ProcessOperations_">
+ <summary>
+ An administrative interface for process management.
+ Managed servers must
+ implement this interface.
+
+ A servant implementing this interface is a potential target
+ for denial-of-service attacks, therefore proper security precautions
+ should be taken. For example, the servant can use a UUID to make its
+ identity harder to guess, and be registered in an object adapter with
+ a secured endpoint.
+ </summary>
+ </member>
+ <member name="M:Ice.ProcessOperations_.shutdown(Ice.Current)">
+ <summary>
+ Initiate a graceful shut-down.
+ </summary>
+ <param name="current__">The Current object for the invocation.</param>
+ </member>
+ <member name="M:Ice.ProcessOperations_.writeMessage(System.String,System.Int32,Ice.Current)">
+ <summary>
+ Write a message on the process' stdout or stderr.
+ </summary>
+ <param name="message">The message.
+
+ </param>
+ <param name="fd">1 for stdout, 2 for stderr.</param>
+ <param name="current__">The Current object for the invocation.</param>
+ </member>
+ <member name="T:Ice.ProcessOperationsNC_">
+ <summary>
+ An administrative interface for process management.
+ Managed servers must
+ implement this interface.
+
+ A servant implementing this interface is a potential target
+ for denial-of-service attacks, therefore proper security precautions
+ should be taken. For example, the servant can use a UUID to make its
+ identity harder to guess, and be registered in an object adapter with
+ a secured endpoint.
+ </summary>
+ </member>
+ <member name="M:Ice.ProcessOperationsNC_.shutdown">
+ <summary>
+ Initiate a graceful shut-down.
+ </summary>
+ </member>
+ <member name="M:Ice.ProcessOperationsNC_.writeMessage(System.String,System.Int32)">
+ <summary>
+ Write a message on the process' stdout or stderr.
+ </summary>
+ <param name="message">The message.
+
+ </param>
+ <param name="fd">1 for stdout, 2 for stderr.</param>
+ </member>
+ <member name="T:Ice.PropertiesAdminOperations_">
+ <summary>
+ The PropertiesAdmin interface provides remote access to the properties
+ of a communicator.
+ </summary>
+ </member>
+ <member name="M:Ice.PropertiesAdminOperations_.getProperty(System.String,Ice.Current)">
+ <summary>
+ Get a property by key.
+ If the property is not set, an empty
+ string is returned.
+
+ </summary>
+ <param name="key">The property key.
+
+ </param>
+ <returns>The property value.</returns>
+ <param name="current__">The Current object for the invocation.</param>
+ </member>
+ <member name="M:Ice.PropertiesAdminOperations_.getPropertiesForPrefix(System.String,Ice.Current)">
+ <summary>
+ Get all properties whose keys begins with
+ prefix.
+ If
+ prefix is an empty string,
+ then all properties are returned.
+
+ </summary>
+ <param name="prefix">The prefix to search for (empty string if none).
+ </param>
+ <returns>The matching property set.</returns>
+ <param name="current__">The Current object for the invocation.</param>
+ </member>
+ <member name="T:Ice.PropertiesAdminOperationsNC_">
+ <summary>
+ The PropertiesAdmin interface provides remote access to the properties
+ of a communicator.
+ </summary>
+ </member>
+ <member name="M:Ice.PropertiesAdminOperationsNC_.getProperty(System.String)">
+ <summary>
+ Get a property by key.
+ If the property is not set, an empty
+ string is returned.
+
+ </summary>
+ <param name="key">The property key.
+
+ </param>
+ <returns>The property value.</returns>
+ </member>
+ <member name="M:Ice.PropertiesAdminOperationsNC_.getPropertiesForPrefix(System.String)">
+ <summary>
+ Get all properties whose keys begins with
+ prefix.
+ If
+ prefix is an empty string,
+ then all properties are returned.
+
+ </summary>
+ <param name="prefix">The prefix to search for (empty string if none).
+ </param>
+ <returns>The matching property set.</returns>
+ </member>
+ <member name="M:Ice.Properties.getProperty(System.String)">
+ <summary>
+ Get a property by key.
+ If the property is not set, an empty
+ string is returned.
+
+ </summary>
+ <param name="key">The property key.
+
+ </param>
+ <returns>The property value.
+
+ </returns>
+ </member>
+ <member name="M:Ice.Properties.getPropertyWithDefault(System.String,System.String)">
+ <summary>
+ Get a property by key.
+ If the property is not set, the
+ given default value is returned.
+
+ </summary>
+ <param name="key">The property key.
+
+ </param>
+ <param name="value">The default value to use if the property does not
+ exist.
+
+ </param>
+ <returns>The property value or the default value.
+
+ </returns>
+ </member>
+ <member name="M:Ice.Properties.getPropertyAsInt(System.String)">
+ <summary>
+ Get a property as an integer.
+ If the property is not set, 0
+ is returned.
+
+ </summary>
+ <param name="key">The property key.
+
+ </param>
+ <returns>The property value interpreted as an integer.
+
+ </returns>
+ </member>
+ <member name="M:Ice.Properties.getPropertyAsIntWithDefault(System.String,System.Int32)">
+ <summary>
+ Get a property as an integer.
+ If the property is not set, the
+ given default value is returned.
+
+ </summary>
+ <param name="key">The property key.
+
+ </param>
+ <param name="value">The default value to use if the property does not
+ exist.
+
+ </param>
+ <returns>The property value interpreted as an integer, or the
+ default value.
+
+ </returns>
+ </member>
+ <member name="M:Ice.Properties.getPropertyAsList(System.String)">
+ <summary>
+ Get a property as a list of strings.
+ If the property is not set,
+ an empty list is returned. The strings in the list can contain
+ whitespace if they are enclosed in single or double quotes.
+ If quotes are mismatched, an empty list is returned.
+ Within single quotes or double-quotes, you can escape the
+ quote in question with \, e.g. O'Reilly can be written as
+ O'Reilly, "O'Reilly" or 'O\'Reilly'.
+
+ </summary>
+ <param name="key">The property key.
+
+ </param>
+ <returns>The property value interpreted as a list of strings.
+
+ </returns>
+ </member>
+ <member name="M:Ice.Properties.getPropertyAsListWithDefault(System.String,System.String[])">
+ <summary>
+ Get a property as a list of strings.
+ If the property is not set,
+ the default list is returned. The strings in the list can contain
+ whitespace if they are enclosed in single or double quotes.
+ If quotes are mismatched, the default list is returned.
+ Within single quotes or double-quotes, you can escape the
+ quote in question with \, e.g. O'Reilly can be written as
+ O'Reilly, "O'Reilly" or 'O\'Reilly'.
+
+ </summary>
+ <param name="key">The property key.
+
+ </param>
+ <param name="value">The default value to use if the property is not set.
+
+ </param>
+ <returns>The property value interpreted as list of strings, or the
+ default value.
+
+ </returns>
+ </member>
+ <member name="M:Ice.Properties.getPropertiesForPrefix(System.String)">
+ <summary>
+ Get all properties whose keys begins with
+ prefix.
+ If
+ prefix is an empty string,
+ then all properties are returned.
+
+ </summary>
+ <param name="prefix">The prefix to search for (empty string if none).
+ </param>
+ <returns>The matching property set.</returns>
+ </member>
+ <member name="M:Ice.Properties.setProperty(System.String,System.String)">
+ <summary>
+ Set a property.
+ To unset a property, set it to
+ the empty string.
+
+ </summary>
+ <param name="key">The property key.
+ </param>
+ <param name="value">The property value.
+
+ </param>
+ </member>
+ <member name="M:Ice.Properties.getCommandLineOptions">
+ <summary>
+ Get a sequence of command-line options that is equivalent to
+ this property set.
+ Each element of the returned sequence is
+ a command-line option of the form
+ --key=value.
+
+ </summary>
+ <returns>The command line options for this property set.</returns>
+ </member>
+ <member name="M:Ice.Properties.parseCommandLineOptions(System.String,System.String[])">
+ <summary>
+ Convert a sequence of command-line options into properties.
+ All options that begin with
+ --prefix. are
+ converted into properties. If the prefix is empty, all options
+ that begin with -- are converted to properties.
+
+ </summary>
+ <param name="prefix">The property prefix, or an empty string to
+ convert all options starting with --.
+
+ </param>
+ <param name="options">The command-line options.
+
+ </param>
+ <returns>The command-line options that do not start with the specified
+ prefix, in their original order.</returns>
+ </member>
+ <member name="M:Ice.Properties.parseIceCommandLineOptions(System.String[])">
+ <summary>
+ Convert a sequence of command-line options into properties.
+ All options that begin with one of the following prefixes
+ are converted into properties: --Ice, --IceBox, --IceGrid,
+ --IcePatch2, --IceSSL, --IceStorm, --Freeze, and --Glacier2.
+
+ </summary>
+ <param name="options">The command-line options.
+
+ </param>
+ <returns>The command-line options that do not start with one of
+ the listed prefixes, in their original order.</returns>
+ </member>
+ <member name="M:Ice.Properties.load(System.String)">
+ <summary>
+ Load properties from a file.
+ </summary>
+ <param name="file">The property file.</param>
+ </member>
+ <member name="M:Ice.Properties.ice_clone_">
+ <summary>
+ Create a copy of this property set.
+ </summary>
+ <returns>A copy of this property set.</returns>
+ </member>
+ <member name="T:Ice.Callback_Object_ice_isA">
+ <summary>
+ Delegate for a successful <code>ice_isA</code> invocation.
+ <param name="ret__">True if the remote object supports the type, false otherwise.</param>
+ </summary>
+ </member>
+ <member name="T:Ice.Callback_Object_ice_ids">
+ <summary>
+ Delegate for a successful <code>ice_ids</code> invocation.
+ <param name="ret__">The array of Slice type ids supported by the remote object.</param>
+ </summary>
+ </member>
+ <member name="T:Ice.Callback_Object_ice_id">
+ <summary>
+ Delegate for a successful <code>ice_id</code> invocation.
+ <param name="ret__">The Slice type id of the most-derived interface supported by the remote object.</param>
+ </summary>
+ </member>
+ <member name="T:Ice.Callback_Object_ice_ping">
+ <summary>
+ Delegate for a successful <code>ice_ping</code> invocation.
+ </summary>
+ </member>
+ <member name="T:Ice.Callback_Object_ice_invoke">
+ <summary>
+ Delegate for a successful <code>ice_invoke</code> invocation.
+ <param name="ret__">True if the invocation succeeded, or false if the invocation
+ raised a user exception.</param>
+ <param name="outParams">The encoded out-parameters or user exception.</param>
+ </summary>
+ </member>
+ <member name="T:Ice.AMI_Object_ice_invoke">
+ <summary>
+ Callback object for Blobject AMI invocations.
+ </summary>
+ </member>
+ <member name="M:Ice.AMI_Object_ice_invoke.ice_response(System.Boolean,System.Byte[])">
+ <summary>
+ The Ice run time calls <code>ice_response</code> when an asynchronous operation invocation
+ completes successfully or raises a user exception.
+ </summary>
+ <param name="ok">Indicates the result of the invocation. If true, the operation
+ completed succesfully; if false, the operation raised a user exception.</param>
+ <param name="outParams">Contains the encoded out-parameters of the operation (if any) if ok
+ is true; otherwise, if ok is false, contains the
+ encoded user exception raised by the operation.</param>
+ </member>
+ <member name="T:Ice.AMI_Object_ice_flushBatchRequests">
+ <summary>
+ Callback object for ObjectPrx.ice_flushBatchRequests_async.
+ </summary>
+ </member>
+ <member name="T:Ice.ObjectPrx">
+ <summary>
+ Base interface of all object proxies.
+ </summary>
+ </member>
+ <member name="M:Ice.ObjectPrx.ice_getHash">
+ <summary>
+ This method is deprecated. Use GetHashCode instead.
+ </summary>
+ </member>
+ <member name="M:Ice.ObjectPrx.ice_getCommunicator">
+ <summary>
+ Returns the communicator that created this proxy.
+ </summary>
+ <returns>The communicator that created this proxy.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrx.ice_toString">
+ <summary>
+ This method is deprecated. Use ToString instead.
+ </summary>
+ </member>
+ <member name="M:Ice.ObjectPrx.ice_isA(System.String)">
+ <summary>
+ Tests whether this object supports a specific Slice interface.
+ </summary>
+ <param name="id__">The type ID of the Slice interface to test against.</param>
+ <returns>True if the target object has the interface specified by id__ or derives
+ from the interface specified by id__.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrx.ice_isA(System.String,System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Tests whether this object supports a specific Slice interface.
+ </summary>
+ <param name="id__">The type ID of the Slice interface to test against.</param>
+ <param name="context__">The context dictionary for the invocation.</param>
+ <returns>True if the target object has the interface specified by id__ or derives
+ from the interface specified by id__.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrx.begin_ice_isA(System.String)">
+ <summary>
+ Tests whether this object supports a specific Slice interface.
+ </summary>
+ <param name="id">The type ID of the Slice interface to test against.</param>
+ <returns>An asynchronous result object.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrx.begin_ice_isA(System.String,System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Tests whether this object supports a specific Slice interface.
+ </summary>
+ <param name="id">The type ID of the Slice interface to test against.</param>
+ <param name="context__">The context dictionary for the invocation.</param>
+ <returns>An asynchronous result object.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrx.begin_ice_isA(System.String,Ice.AsyncCallback,System.Object)">
+ <summary>
+ Tests whether this object supports a specific Slice interface.
+ </summary>
+ <param name="id">The type ID of the Slice interface to test against.</param>
+ <param name="cb__">A callback to be invoked when the invocation completes.</param>
+ <param name="cookie__">Application-specific data to be stored in the result.</param>
+ <returns>An asynchronous result object.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrx.begin_ice_isA(System.String,System.Collections.Generic.Dictionary{System.String,System.String},Ice.AsyncCallback,System.Object)">
+ <summary>
+ Tests whether this object supports a specific Slice interface.
+ </summary>
+ <param name="id">The type ID of the Slice interface to test against.</param>
+ <param name="context__">The context dictionary for the invocation.</param>
+ <param name="cb__">A callback to be invoked when the invocation completes.</param>
+ <param name="cookie__">Application-specific data to be stored in the result.</param>
+ <returns>An asynchronous result object.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrx.end_ice_isA(Ice.AsyncResult)">
+ <summary>
+ Tests whether this object supports a specific Slice interface.
+ </summary>
+ <param name="r__">The asynchronous result object returned by <code>begin_ice_isA</code>.</param>
+ <returns>True if the object supports the Slice interface, false otherwise.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrx.ice_ping">
+ <summary>
+ Tests whether the target object of this proxy can be reached.
+ </summary>
+ </member>
+ <member name="M:Ice.ObjectPrx.ice_ping(System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Tests whether the target object of this proxy can be reached.
+ </summary>
+ <param name="context__">The context dictionary for the invocation.</param>
+ </member>
+ <member name="M:Ice.ObjectPrx.begin_ice_ping">
+ <summary>
+ Tests whether the target object of this proxy can be reached.
+ </summary>
+ <returns>An asynchronous result object.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrx.begin_ice_ping(System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Tests whether the target object of this proxy can be reached.
+ </summary>
+ <param name="context__">The context dictionary for the invocation.</param>
+ <returns>An asynchronous result object.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrx.begin_ice_ping(Ice.AsyncCallback,System.Object)">
+ <summary>
+ Tests whether the target object of this proxy can be reached.
+ </summary>
+ <param name="cb__">A callback to be invoked when the invocation completes.</param>
+ <param name="cookie__">Application-specific data to be stored in the result.</param>
+ <returns>An asynchronous result object.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrx.begin_ice_ping(System.Collections.Generic.Dictionary{System.String,System.String},Ice.AsyncCallback,System.Object)">
+ <summary>
+ Tests whether the target object of this proxy can be reached.
+ </summary>
+ <param name="context__">The context dictionary for the invocation.</param>
+ <param name="cb__">A callback to be invoked when the invocation completes.</param>
+ <param name="cookie__">Application-specific data to be stored in the result.</param>
+ <returns>An asynchronous result object.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrx.end_ice_ping(Ice.AsyncResult)">
+ <summary>
+ Tests whether the target object of this proxy can be reached.
+ </summary>
+ <param name="r__">The asynchronous result object returned by <code>begin_ice_ping</code>.</param>
+ </member>
+ <member name="M:Ice.ObjectPrx.ice_ids">
+ <summary>
+ Returns the Slice type IDs of the interfaces supported by the target object of this proxy.
+ </summary>
+ <returns>The Slice type IDs of the interfaces supported by the target object, in base-to-derived
+ order. The first element of the returned array is always ::Ice::Object.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrx.ice_ids(System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Returns the Slice type IDs of the interfaces supported by the target object of this proxy.
+ </summary>
+ <param name="context__">The context dictionary for the invocation.</param>
+ <returns>The Slice type IDs of the interfaces supported by the target object, in base-to-derived
+ order. The first element of the returned array is always ::Ice::Object.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrx.begin_ice_ids">
+ <summary>
+ Returns the Slice type IDs of the interfaces supported by the target object of this proxy.
+ </summary>
+ <returns>An asynchronous result object.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrx.begin_ice_ids(System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Returns the Slice type IDs of the interfaces supported by the target object of this proxy.
+ </summary>
+ <param name="context__">The context dictionary for the invocation.</param>
+ <returns>An asynchronous result object.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrx.begin_ice_ids(Ice.AsyncCallback,System.Object)">
+ <summary>
+ Returns the Slice type IDs of the interfaces supported by the target object of this proxy.
+ </summary>
+ <param name="cb__">A callback to be invoked when the invocation completes.</param>
+ <param name="cookie__">Application-specific data to be stored in the result.</param>
+ <returns>An asynchronous result object.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrx.begin_ice_ids(System.Collections.Generic.Dictionary{System.String,System.String},Ice.AsyncCallback,System.Object)">
+ <summary>
+ Returns the Slice type IDs of the interfaces supported by the target object of this proxy.
+ </summary>
+ <param name="context__">The context dictionary for the invocation.</param>
+ <param name="cb__">A callback to be invoked when the invocation completes.</param>
+ <param name="cookie__">Application-specific data to be stored in the result.</param>
+ <returns>An asynchronous result object.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrx.end_ice_ids(Ice.AsyncResult)">
+ <summary>
+ Returns the Slice type IDs of the interfaces supported by the target object of this proxy.
+ </summary>
+ <param name="r__">The asynchronous result object returned by <code>begin_ice_ids</code>.</param>
+ <returns>The Slice type IDs of the interfaces supported by the target object, in base-to-derived
+ order. The first element of the returned array is always ::Ice::Object.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrx.ice_id">
+ <summary>
+ Returns the Slice type ID of the most-derived interface supported by the target object of this proxy.
+ </summary>
+ <returns>The Slice type ID of the most-derived interface.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrx.ice_id(System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Returns the Slice type ID of the most-derived interface supported by the target object of this proxy.
+ </summary>
+ <param name="context__">The context dictionary for the invocation.</param>
+ <returns>The Slice type ID of the most-derived interface.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrx.begin_ice_id">
+ <summary>
+ Returns the Slice type ID of the most-derived interface supported by the target object of this proxy.
+ </summary>
+ <returns>An asynchronous result object.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrx.begin_ice_id(System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Returns the Slice type ID of the most-derived interface supported by the target object of this proxy.
+ </summary>
+ <param name="context__">The context dictionary for the invocation.</param>
+ <returns>An asynchronous result object.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrx.begin_ice_id(Ice.AsyncCallback,System.Object)">
+ <summary>
+ Returns the Slice type ID of the most-derived interface supported by the target object of this proxy.
+ </summary>
+ <param name="cb__">A callback to be invoked when the invocation completes.</param>
+ <param name="cookie__">Application-specific data to be stored in the result.</param>
+ <returns>An asynchronous result object.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrx.begin_ice_id(System.Collections.Generic.Dictionary{System.String,System.String},Ice.AsyncCallback,System.Object)">
+ <summary>
+ Returns the Slice type ID of the most-derived interface supported by the target object of this proxy.
+ </summary>
+ <param name="context__">The context dictionary for the invocation.</param>
+ <param name="cb__">A callback to be invoked when the invocation completes.</param>
+ <param name="cookie__">Application-specific data to be stored in the result.</param>
+ <returns>An asynchronous result object.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrx.end_ice_id(Ice.AsyncResult)">
+ <summary>
+ Returns the Slice type ID of the most-derived interface supported by the target object of this proxy.
+ </summary>
+ <param name="r__">The asynchronous result object returned by <code>begin_ice_id</code>.</param>
+ <returns>The Slice type ID of the most-derived interface.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrx.ice_invoke(System.String,Ice.OperationMode,System.Byte[],System.Byte[]@)">
+ <summary>
+ Invokes an operation dynamically.
+ </summary>
+ <param name="operation">The name of the operation to invoke.</param>
+ <param name="mode">The operation mode (normal or idempotent).</param>
+ <param name="inParams">The encoded in-parameters for the operation.</param>
+ <param name="outParams">The encoded out-paramaters and return value
+ for the operation. The return value follows any out-parameters.</param>
+ <returns>If the operation completed successfully, the return value
+ is true. If the operation raises a user exception,
+ the return value is false; in this case, outParams
+ contains the encoded user exception. If the operation raises a run-time exception,
+ it throws it directly.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrx.ice_invoke(System.String,Ice.OperationMode,System.Byte[],System.Byte[]@,System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Invokes an operation dynamically.
+ </summary>
+ <param name="operation">The name of the operation to invoke.</param>
+ <param name="mode">The operation mode (normal or idempotent).</param>
+ <param name="inParams">The encoded in-parameters for the operation.</param>
+ <param name="outParams">The encoded out-paramaters and return value
+ for the operation. The return value follows any out-parameters.</param>
+ <param name="context__">The context dictionary for the invocation.</param>
+ <returns>If the operation completed successfully, the return value
+ is true. If the operation raises a user exception,
+ the return value is false; in this case, outParams
+ contains the encoded user exception. If the operation raises a run-time exception,
+ it throws it directly.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrx.ice_invoke_async(Ice.AMI_Object_ice_invoke,System.String,Ice.OperationMode,System.Byte[])">
+ <summary>
+ Invokes an operation dynamically and asynchronously.
+ </summary>
+ <param name="cb">The callback object to notify when the operation completes.</param>
+ <param name="operation">The name of the operation to invoke.</param>
+ <param name="mode">The operation mode (normal or idempotent).</param>
+ <param name="inParams">The encoded in-parameters for the operation.</param>
+ <returns> If the operation was invoked synchronously (because there
+ was no need to queue the request), the return value is true;
+ otherwise, if the invocation was queued, the return value is false.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrx.ice_invoke_async(Ice.AMI_Object_ice_invoke,System.String,Ice.OperationMode,System.Byte[],System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Invokes an operation dynamically and asynchronously.
+ </summary>
+ <param name="cb">The callback object to notify when the operation completes.</param>
+ <param name="operation">The name of the operation to invoke.</param>
+ <param name="mode">The operation mode (normal or idempotent).</param>
+ <param name="inParams">The encoded in-parameters for the operation.</param>
+ <param name="context">The context dictionary for the invocation.</param>
+ <returns> If the operation was invoked synchronously (because there
+ was no need to queue the request), the return value is true;
+ otherwise, if the invocation was queued, the return value is false.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrx.begin_ice_invoke(System.String,Ice.OperationMode,System.Byte[])">
+ <summary>
+ Invokes an operation dynamically.
+ </summary>
+ <param name="operation">The name of the operation to invoke.</param>
+ <param name="mode">The operation mode (normal or idempotent).</param>
+ <param name="inParams">The encoded in-parameters for the operation.</param>
+ <returns>An asynchronous result object.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrx.begin_ice_invoke(System.String,Ice.OperationMode,System.Byte[],System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Invokes an operation dynamically.
+ </summary>
+ <param name="operation">The name of the operation to invoke.</param>
+ <param name="mode">The operation mode (normal or idempotent).</param>
+ <param name="inParams">The encoded in-parameters for the operation.</param>
+ <param name="context__">The context dictionary for the invocation.</param>
+ <returns>An asynchronous result object.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrx.begin_ice_invoke(System.String,Ice.OperationMode,System.Byte[],Ice.AsyncCallback,System.Object)">
+ <summary>
+ Invokes an operation dynamically.
+ </summary>
+ <param name="operation">The name of the operation to invoke.</param>
+ <param name="mode">The operation mode (normal or idempotent).</param>
+ <param name="inParams">The encoded in-parameters for the operation.</param>
+ <param name="cb__">A callback to be invoked when the invocation completes.</param>
+ <param name="cookie__">Application-specific data to be stored in the result.</param>
+ <returns>An asynchronous result object.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrx.begin_ice_invoke(System.String,Ice.OperationMode,System.Byte[],System.Collections.Generic.Dictionary{System.String,System.String},Ice.AsyncCallback,System.Object)">
+ <summary>
+ Invokes an operation dynamically.
+ </summary>
+ <param name="operation">The name of the operation to invoke.</param>
+ <param name="mode">The operation mode (normal or idempotent).</param>
+ <param name="inParams">The encoded in-parameters for the operation.</param>
+ <param name="context__">The context dictionary for the invocation.</param>
+ <param name="cb__">A callback to be invoked when the invocation completes.</param>
+ <param name="cookie__">Application-specific data to be stored in the result.</param>
+ <returns>An asynchronous result object.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrx.end_ice_invoke(System.Byte[]@,Ice.AsyncResult)">
+ <summary>
+ Completes a dynamic invocation.
+ </summary>
+ <param name="outParams">The encoded out parameters or user exception.</param>
+ <param name="r__">The asynchronous result object returned by <code>begin_ice_invoke</code>.</param>
+ <returns>If the operation completed successfully, the return value
+ is true. If the operation raises a user exception,
+ the return value is false; in this case, outParams
+ contains the encoded user exception. If the operation raises a run-time exception,
+ it throws it directly.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrx.ice_getIdentity">
+ <summary>
+ Returns the identity embedded in this proxy.
+ <returns>The identity of the target object.</returns>
+ </summary>
+ </member>
+ <member name="M:Ice.ObjectPrx.ice_identity(Ice.Identity)">
+ <summary>
+ Creates a new proxy that is identical to this proxy, except for the per-proxy context.
+ <param name="newIdentity">The identity for the new proxy.</param>
+ <returns>The proxy with the new identity.</returns>
+ </summary>
+ </member>
+ <member name="M:Ice.ObjectPrx.ice_getContext">
+ <summary>
+ Returns the per-proxy context for this proxy.
+ </summary>
+ <returns>The per-proxy context. If the proxy does not have a per-proxy (implicit) context, the return value
+ is null.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrx.ice_context(System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Creates a new proxy that is identical to this proxy, except for the per-proxy context.
+ </summary>
+ <param name="newContext">The context for the new proxy.</param>
+ <returns>The proxy with the new per-proxy context.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrx.ice_getFacet">
+ <summary>
+ Returns the facet for this proxy.
+ </summary>
+ <returns>The facet for this proxy. If the proxy uses the default facet, the return value is the
+ empty string.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrx.ice_facet(System.String)">
+ <summary>
+ Creates a new proxy that is identical to this proxy, except for the facet.
+ </summary>
+ <param name="newFacet">The facet for the new proxy.</param>
+ <returns>The proxy with the new facet.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrx.ice_getAdapterId">
+ <summary>
+ Returns the adapter ID for this proxy.
+ </summary>
+ <returns>The adapter ID. If the proxy does not have an adapter ID, the return value is the
+ empty string.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrx.ice_adapterId(System.String)">
+ <summary>
+ Creates a new proxy that is identical to this proxy, except for the adapter ID.
+ </summary>
+ <param name="newAdapterId">The adapter ID for the new proxy.</param>
+ <returns>The proxy with the new adapter ID.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrx.ice_getEndpoints">
+ <summary>
+ Returns the endpoints used by this proxy.
+ </summary>
+ <returns>The endpoints used by this proxy.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrx.ice_endpoints(Ice.Endpoint[])">
+ <summary>
+ Creates a new proxy that is identical to this proxy, except for the endpoints.
+ </summary>
+ <param name="newEndpoints">The endpoints for the new proxy.</param>
+ <returns>The proxy with the new endpoints.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrx.ice_getLocatorCacheTimeout">
+ <summary>
+ Returns the locator cache timeout of this proxy.
+ </summary>
+ <returns>The locator cache timeout value (in seconds).</returns>
+ </member>
+ <member name="M:Ice.ObjectPrx.ice_locatorCacheTimeout(System.Int32)">
+ <summary>
+ Creates a new proxy that is identical to this proxy, except for the locator cache timeout.
+ </summary>
+ <param name="timeout">The new locator cache timeout (in seconds).</param>
+ </member>
+ <member name="M:Ice.ObjectPrx.ice_isConnectionCached">
+ <summary>
+ Returns whether this proxy caches connections.
+ </summary>
+ <returns>True if this proxy caches connections; false, otherwise.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrx.ice_connectionCached(System.Boolean)">
+ <summary>
+ Creates a new proxy that is identical to this proxy, except for connection caching.
+ </summary>
+ <param name="newCache">True if the new proxy should cache connections; false, otherwise.</param>
+ <returns>The new proxy with the specified caching policy.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrx.ice_getEndpointSelection">
+ <summary>
+ Returns how this proxy selects endpoints (randomly or ordered).
+ </summary>
+ <returns>The endpoint selection policy.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrx.ice_endpointSelection(Ice.EndpointSelectionType)">
+ <summary>
+ Creates a new proxy that is identical to this proxy, except for the endpoint selection policy.
+ </summary>
+ <param name="newType">The new endpoint selection policy.</param>
+ <returns>The new proxy with the specified endpoint selection policy.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrx.ice_isSecure">
+ <summary>
+ Returns whether this proxy communicates only via secure endpoints.
+ </summary>
+ <returns>True if this proxy communicates only vi secure endpoints; false, otherwise.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrx.ice_secure(System.Boolean)">
+ <summary>
+ Creates a new proxy that is identical to this proxy, except for how it selects endpoints.
+ </summary>
+ <param name="b"> If b is true, only endpoints that use a secure transport are
+ used by the new proxy. If b is false, the returned proxy uses both secure and insecure
+ endpoints.</param>
+ <returns>The new proxy with the specified selection policy.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrx.ice_isPreferSecure">
+ <summary>
+ Returns whether this proxy prefers secure endpoints.
+ </summary>
+ <returns>True if the proxy always attempts to invoke via secure endpoints before it
+ attempts to use insecure endpoints; false, otherwise.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrx.ice_preferSecure(System.Boolean)">
+ <summary>
+ Creates a new proxy that is identical to this proxy, except for its endpoint selection policy.
+ </summary>
+ <param name="b">If b is true, the new proxy will use secure endpoints for invocations
+ and only use insecure endpoints if an invocation cannot be made via secure endpoints. If b is
+ false, the proxy prefers insecure endpoints to secure ones.</param>
+ <returns>The new proxy with the new endpoint selection policy.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrx.ice_getRouter">
+ <summary>
+ Returns the router for this proxy.
+ </summary>
+ <returns>The router for the proxy. If no router is configured for the proxy, the return value
+ is null.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrx.ice_router(Ice.RouterPrx)">
+ <summary>
+ Creates a new proxy that is identical to this proxy, except for the router.
+ </summary>
+ <param name="router">The router for the new proxy.</param>
+ <returns>The new proxy with the specified router.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrx.ice_getLocator">
+ <summary>
+ Returns the locator for this proxy.
+ </summary>
+ <returns>The locator for this proxy. If no locator is configured, the return value is null.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrx.ice_locator(Ice.LocatorPrx)">
+ <summary>
+ Creates a new proxy that is identical to this proxy, except for the locator.
+ </summary>
+ <param name="locator">The locator for the new proxy.</param>
+ <returns>The new proxy with the specified locator.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrx.ice_isCollocationOptimized">
+ <summary>
+ Returns whether this proxy uses collocation optimization.
+ </summary>
+ <returns>True if the proxy uses collocation optimization; false, otherwise.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrx.ice_collocationOptimized(System.Boolean)">
+ <summary>
+ Creates a new proxy that is identical to this proxy, except for collocation optimization.
+ </summary>
+ <param name="b">True if the new proxy enables collocation optimization; false, otherwise.</param>
+ <returns>The new proxy the specified collocation optimization.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrx.ice_twoway">
+ <summary>
+ Creates a new proxy that is identical to this proxy, but uses twoway invocations.
+ </summary>
+ <returns>A new proxy that uses twoway invocations.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrx.ice_isTwoway">
+ <summary>
+ Returns whether this proxy uses twoway invocations.
+ </summary>
+ <returns>True if this proxy uses twoway invocations; false, otherwise.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrx.ice_oneway">
+ <summary>
+ Creates a new proxy that is identical to this proxy, but uses oneway invocations.
+ </summary>
+ <returns>A new proxy that uses oneway invocations.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrx.ice_isOneway">
+ <summary>
+ Returns whether this proxy uses oneway invocations.
+ </summary>
+ <returns>True if this proxy uses oneway invocations; false, otherwise.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrx.ice_batchOneway">
+ <summary>
+ Creates a new proxy that is identical to this proxy, but uses batch oneway invocations.
+ </summary>
+ <returns>A new proxy that uses batch oneway invocations.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrx.ice_isBatchOneway">
+ <summary>
+ Returns whether this proxy uses batch oneway invocations.
+ </summary>
+ <returns>True if this proxy uses batch oneway invocations; false, otherwise.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrx.ice_datagram">
+ <summary>
+ Creates a new proxy that is identical to this proxy, but uses datagram invocations.
+ </summary>
+ <returns>A new proxy that uses datagram invocations.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrx.ice_isDatagram">
+ <summary>
+ Returns whether this proxy uses datagram invocations.
+ </summary>
+ <returns>True if this proxy uses datagram invocations; false, otherwise.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrx.ice_batchDatagram">
+ <summary>
+ Creates a new proxy that is identical to this proxy, but uses batch datagram invocations.
+ </summary>
+ <returns>A new proxy that uses batch datagram invocations.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrx.ice_isBatchDatagram">
+ <summary>
+ Returns whether this proxy uses batch datagram invocations.
+ </summary>
+ <returns>True if this proxy uses batch datagram invocations; false, otherwise.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrx.ice_compress(System.Boolean)">
+ <summary>
+ Creates a new proxy that is identical to this proxy, except for compression.
+ </summary>
+ <param name="co">True enables compression for the new proxy; false disables compression.</param>
+ <returns>A new proxy with the specified compression setting.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrx.ice_timeout(System.Int32)">
+ <summary>
+ Creates a new proxy that is identical to this proxy, except for its timeout setting.
+ </summary>
+ <param name="t">The timeout for the new proxy in milliseconds.</param>
+ <returns>A new proxy with the specified timeout.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrx.ice_connectionId(System.String)">
+ <summary>
+ Creates a new proxy that is identical to this proxy, except for its connection ID.
+ </summary>
+ <param name="connectionId">The connection ID for the new proxy. An empty string removes the
+ connection ID.</param>
+ <returns>A new proxy with the specified connection ID.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrx.ice_getConnectionId">
+ <summary>
+ Returns the connection id of this proxy.
+ </summary>
+ <returns>The connection id.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrx.ice_getConnection">
+ <summary>
+ Returns the Connection for this proxy. If the proxy does not yet have an established connection,
+ it first attempts to create a connection.
+ </summary>
+ <returns>The Connection for this proxy.</returns>
+ <exception name="CollocationOptimizationException">If the proxy uses collocation optimization and denotes a
+ collocated object.</exception>
+ </member>
+ <member name="M:Ice.ObjectPrx.ice_getCachedConnection">
+ <summary>
+ Returns the cached Connection for this proxy. If the proxy does not yet have an established
+ connection, it does not attempt to create a connection.
+ </summary>
+ <returns>The cached Connection for this proxy (null if the proxy does not have
+ an established connection).</returns>
+ <exception name="CollocationOptimizationException">If the proxy uses collocation optimization and denotes a
+ collocated object.</exception>
+ </member>
+ <member name="M:Ice.ObjectPrx.ice_flushBatchRequests">
+ <summary>
+ Flushes any pending batched requests for this communicator. The call blocks until the flush is complete.
+ </summary>
+ </member>
+ <member name="M:Ice.ObjectPrx.ice_flushBatchRequests_async(Ice.AMI_Object_ice_flushBatchRequests)">
+ <summary>
+ Asynchronously flushes any pending batched requests for this communicator. The call does not block.
+ </summary>
+ <param name="cb">The callback object to notify the application when the flush is complete.</param>
+ <returns>True if the requests were flushed immediately without blocking; false
+ if the requests could not be flushed immediately.</returns>
+ </member>
+ <member name="T:Ice.ObjectPrxHelperBase">
+ <summary>
+ Base class of all object proxies.
+ </summary>
+ </member>
+ <member name="M:Ice.ObjectPrxHelperBase.GetHashCode">
+ <summary>
+ Returns a hash code for this proxy.
+ </summary>
+ <returns>The hash code.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrxHelperBase.ice_getHash">
+ <summary>
+ This method is deprecated. Use GetHashCode instead.
+ </summary>
+ </member>
+ <member name="M:Ice.ObjectPrxHelperBase.ice_getCommunicator">
+ <summary>
+ Returns the communicator that created this proxy.
+ </summary>
+ <returns>The communicator that created this proxy.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrxHelperBase.ToString">
+ <summary>
+ Returns the stringified form of this proxy.
+ </summary>
+ <returns>The stringified proxy.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrxHelperBase.ice_toString">
+ <summary>
+ This method is deprecated. Use ToString instead.
+ </summary>
+ </member>
+ <member name="M:Ice.ObjectPrxHelperBase.ice_isA(System.String)">
+ <summary>
+ Tests whether this object supports a specific Slice interface.
+ </summary>
+ <param name="id__">The type ID of the Slice interface to test against.</param>
+ <returns>True if the target object has the interface specified by id__ or derives
+ from the interface specified by id__.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrxHelperBase.ice_isA(System.String,System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Tests whether this object supports a specific Slice interface.
+ </summary>
+ <param name="id__">The type ID of the Slice interface to test against.</param>
+ <param name="context__">The context dictionary for the invocation.</param>
+ <returns>True if the target object has the interface specified by id__ or derives
+ from the interface specified by id__.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrxHelperBase.ice_ping">
+ <summary>
+ Tests whether the target object of this proxy can be reached.
+ </summary>
+ </member>
+ <member name="M:Ice.ObjectPrxHelperBase.ice_ping(System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Tests whether the target object of this proxy can be reached.
+ </summary>
+ <param name="context__">The context dictionary for the invocation.</param>
+ </member>
+ <member name="M:Ice.ObjectPrxHelperBase.ice_ids">
+ <summary>
+ Returns the Slice type IDs of the interfaces supported by the target object of this proxy.
+ </summary>
+ <returns>The Slice type IDs of the interfaces supported by the target object, in base-to-derived
+ order. The first element of the returned array is always ::Ice::Object.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrxHelperBase.ice_ids(System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Returns the Slice type IDs of the interfaces supported by the target object of this proxy.
+ </summary>
+ <param name="context__">The context dictionary for the invocation.</param>
+ <returns>The Slice type IDs of the interfaces supported by the target object, in base-to-derived
+ order. The first element of the returned array is always ::Ice::Object.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrxHelperBase.ice_id">
+ <summary>
+ Returns the Slice type ID of the most-derived interface supported by the target object of this proxy.
+ </summary>
+ <returns>The Slice type ID of the most-derived interface.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrxHelperBase.ice_id(System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Returns the Slice type ID of the most-derived interface supported by the target object of this proxy.
+ </summary>
+ <param name="context__">The context dictionary for the invocation.</param>
+ <returns>The Slice type ID of the most-derived interface.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrxHelperBase.ice_invoke(System.String,Ice.OperationMode,System.Byte[],System.Byte[]@)">
+ <summary>
+ Invokes an operation dynamically.
+ </summary>
+ <param name="operation">The name of the operation to invoke.</param>
+ <param name="mode">The operation mode (normal or idempotent).</param>
+ <param name="inParams">The encoded in-parameters for the operation.</param>
+ <param name="outParams">The encoded out-paramaters and return value
+ for the operation. The return value follows any out-parameters.</param>
+ <returns>If the operation completed successfully, the return value
+ is true. If the operation raises a user exception,
+ the return value is false; in this case, outParams
+ contains the encoded user exception. If the operation raises a run-time exception,
+ it throws it directly.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrxHelperBase.ice_invoke(System.String,Ice.OperationMode,System.Byte[],System.Byte[]@,System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Invokes an operation dynamically.
+ </summary>
+ <param name="operation">The name of the operation to invoke.</param>
+ <param name="mode">The operation mode (normal or idempotent).</param>
+ <param name="inParams">The encoded in-parameters for the operation.</param>
+ <param name="outParams">The encoded out-paramaters and return value
+ for the operation. The return value follows any out-parameters.</param>
+ <param name="context">The context dictionary for the invocation.</param>
+ <returns>If the operation completed successfully, the return value
+ is true. If the operation raises a user exception,
+ the return value is false; in this case, outParams
+ contains the encoded user exception. If the operation raises a run-time exception,
+ it throws it directly.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrxHelperBase.ice_invoke_async(Ice.AMI_Object_ice_invoke,System.String,Ice.OperationMode,System.Byte[])">
+ <summary>
+ Invokes an operation dynamically and asynchronously.
+ </summary>
+ <param name="cb">The callback object to notify when the operation completes.</param>
+ <param name="operation">The name of the operation to invoke.</param>
+ <param name="mode">The operation mode (normal or idempotent).</param>
+ <param name="inParams">The encoded in-parameters for the operation.</param>
+ <returns> If the operation was invoked synchronously (because there
+ was no need to queue the request), the return value is true;
+ otherwise, if the invocation was queued, the return value is false.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrxHelperBase.ice_invoke_async(Ice.AMI_Object_ice_invoke,System.String,Ice.OperationMode,System.Byte[],System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Invokes an operation dynamically and asynchronously.
+ </summary>
+ <param name="cb">The callback object to notify when the operation completes.</param>
+ <param name="operation">The name of the operation to invoke.</param>
+ <param name="mode">The operation mode (normal or idempotent).</param>
+ <param name="inParams">The encoded in-parameters for the operation.</param>
+ <param name="context">The context dictionary for the invocation.</param>
+ <returns> If the operation was invoked synchronously (because there
+ was no need to queue the request), the return value is true;
+ otherwise, if the invocation was queued, the return value is false.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrxHelperBase.ice_getIdentity">
+ <summary>
+ Returns the identity embedded in this proxy.
+ <returns>The identity of the target object.</returns>
+ </summary>
+ </member>
+ <member name="M:Ice.ObjectPrxHelperBase.ice_identity(Ice.Identity)">
+ <summary>
+ Creates a new proxy that is identical to this proxy, except for the per-proxy context.
+ <param name="newIdentity">The identity for the new proxy.</param>
+ <returns>The proxy with the new identity.</returns>
+ </summary>
+ </member>
+ <member name="M:Ice.ObjectPrxHelperBase.ice_getContext">
+ <summary>
+ Returns the per-proxy context for this proxy.
+ </summary>
+ <returns>The per-proxy context. If the proxy does not have a per-proxy (implicit) context, the return value
+ is null.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrxHelperBase.ice_context(System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Creates a new proxy that is identical to this proxy, except for the per-proxy context.
+ </summary>
+ <param name="newContext">The context for the new proxy.</param>
+ <returns>The proxy with the new per-proxy context.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrxHelperBase.ice_getFacet">
+ <summary>
+ Returns the facet for this proxy.
+ </summary>
+ <returns>The facet for this proxy. If the proxy uses the default facet, the return value is the
+ empty string.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrxHelperBase.ice_facet(System.String)">
+ <summary>
+ Creates a new proxy that is identical to this proxy, except for the facet.
+ </summary>
+ <param name="newFacet">The facet for the new proxy.</param>
+ <returns>The proxy with the new facet.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrxHelperBase.ice_getAdapterId">
+ <summary>
+ Returns the adapter ID for this proxy.
+ </summary>
+ <returns>The adapter ID. If the proxy does not have an adapter ID, the return value is the
+ empty string.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrxHelperBase.ice_adapterId(System.String)">
+ <summary>
+ Creates a new proxy that is identical to this proxy, except for the adapter ID.
+ </summary>
+ <param name="newAdapterId">The adapter ID for the new proxy.</param>
+ <returns>The proxy with the new adapter ID.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrxHelperBase.ice_getEndpoints">
+ <summary>
+ Returns the endpoints used by this proxy.
+ </summary>
+ <returns>The endpoints used by this proxy.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrxHelperBase.ice_endpoints(Ice.Endpoint[])">
+ <summary>
+ Creates a new proxy that is identical to this proxy, except for the endpoints.
+ </summary>
+ <param name="newEndpoints">The endpoints for the new proxy.</param>
+ <returns>The proxy with the new endpoints.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrxHelperBase.ice_getLocatorCacheTimeout">
+ <summary>
+ Returns the locator cache timeout of this proxy.
+ </summary>
+ <returns>The locator cache timeout value (in seconds).</returns>
+ </member>
+ <member name="M:Ice.ObjectPrxHelperBase.ice_locatorCacheTimeout(System.Int32)">
+ <summary>
+ Creates a new proxy that is identical to this proxy, except for the locator cache timeout.
+ </summary>
+ <param name="newTimeout">The new locator cache timeout (in seconds).</param>
+ </member>
+ <member name="M:Ice.ObjectPrxHelperBase.ice_isConnectionCached">
+ <summary>
+ Returns whether this proxy caches connections.
+ </summary>
+ <returns>True if this proxy caches connections; false, otherwise.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrxHelperBase.ice_connectionCached(System.Boolean)">
+ <summary>
+ Creates a new proxy that is identical to this proxy, except for connection caching.
+ </summary>
+ <param name="newCache">True if the new proxy should cache connections; false, otherwise.</param>
+ <returns>The new proxy with the specified caching policy.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrxHelperBase.ice_getEndpointSelection">
+ <summary>
+ Returns how this proxy selects endpoints (randomly or ordered).
+ </summary>
+ <returns>The endpoint selection policy.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrxHelperBase.ice_endpointSelection(Ice.EndpointSelectionType)">
+ <summary>
+ Creates a new proxy that is identical to this proxy, except for the endpoint selection policy.
+ </summary>
+ <param name="newType">The new endpoint selection policy.</param>
+ <returns>The new proxy with the specified endpoint selection policy.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrxHelperBase.ice_isSecure">
+ <summary>
+ Returns whether this proxy communicates only via secure endpoints.
+ </summary>
+ <returns>True if this proxy communicates only vi secure endpoints; false, otherwise.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrxHelperBase.ice_secure(System.Boolean)">
+ <summary>
+ Creates a new proxy that is identical to this proxy, except for how it selects endpoints.
+ </summary>
+ <param name="b"> If b is true, only endpoints that use a secure transport are
+ used by the new proxy. If b is false, the returned proxy uses both secure and insecure
+ endpoints.</param>
+ <returns>The new proxy with the specified selection policy.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrxHelperBase.ice_isPreferSecure">
+ <summary>
+ Returns whether this proxy prefers secure endpoints.
+ </summary>
+ <returns>True if the proxy always attempts to invoke via secure endpoints before it
+ attempts to use insecure endpoints; false, otherwise.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrxHelperBase.ice_preferSecure(System.Boolean)">
+ <summary>
+ Creates a new proxy that is identical to this proxy, except for its endpoint selection policy.
+ </summary>
+ <param name="b">If b is true, the new proxy will use secure endpoints for invocations
+ and only use insecure endpoints if an invocation cannot be made via secure endpoints. If b is
+ false, the proxy prefers insecure endpoints to secure ones.</param>
+ <returns>The new proxy with the new endpoint selection policy.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrxHelperBase.ice_getRouter">
+ <summary>
+ Returns the router for this proxy.
+ </summary>
+ <returns>The router for the proxy. If no router is configured for the proxy, the return value
+ is null.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrxHelperBase.ice_router(Ice.RouterPrx)">
+ <summary>
+ Creates a new proxy that is identical to this proxy, except for the router.
+ </summary>
+ <param name="router">The router for the new proxy.</param>
+ <returns>The new proxy with the specified router.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrxHelperBase.ice_getLocator">
+ <summary>
+ Returns the locator for this proxy.
+ </summary>
+ <returns>The locator for this proxy. If no locator is configured, the return value is null.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrxHelperBase.ice_locator(Ice.LocatorPrx)">
+ <summary>
+ Creates a new proxy that is identical to this proxy, except for the locator.
+ </summary>
+ <param name="locator">The locator for the new proxy.</param>
+ <returns>The new proxy with the specified locator.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrxHelperBase.ice_isCollocationOptimized">
+ <summary>
+ Returns whether this proxy uses collocation optimization.
+ </summary>
+ <returns>True if the proxy uses collocation optimization; false, otherwise.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrxHelperBase.ice_collocationOptimized(System.Boolean)">
+ <summary>
+ Creates a new proxy that is identical to this proxy, except for collocation optimization.
+ </summary>
+ <param name="b">True if the new proxy enables collocation optimization; false, otherwise.</param>
+ <returns>The new proxy the specified collocation optimization.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrxHelperBase.ice_twoway">
+ <summary>
+ Creates a new proxy that is identical to this proxy, but uses twoway invocations.
+ </summary>
+ <returns>A new proxy that uses twoway invocations.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrxHelperBase.ice_isTwoway">
+ <summary>
+ Returns whether this proxy uses twoway invocations.
+ </summary>
+ <returns>True if this proxy uses twoway invocations; false, otherwise.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrxHelperBase.ice_oneway">
+ <summary>
+ Creates a new proxy that is identical to this proxy, but uses oneway invocations.
+ </summary>
+ <returns>A new proxy that uses oneway invocations.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrxHelperBase.ice_isOneway">
+ <summary>
+ Returns whether this proxy uses oneway invocations.
+ </summary>
+ <returns>True if this proxy uses oneway invocations; false, otherwise.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrxHelperBase.ice_batchOneway">
+ <summary>
+ Creates a new proxy that is identical to this proxy, but uses batch oneway invocations.
+ </summary>
+ <returns>A new proxy that uses batch oneway invocations.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrxHelperBase.ice_isBatchOneway">
+ <summary>
+ Returns whether this proxy uses batch oneway invocations.
+ </summary>
+ <returns>True if this proxy uses batch oneway invocations; false, otherwise.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrxHelperBase.ice_datagram">
+ <summary>
+ Creates a new proxy that is identical to this proxy, but uses datagram invocations.
+ </summary>
+ <returns>A new proxy that uses datagram invocations.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrxHelperBase.ice_isDatagram">
+ <summary>
+ Returns whether this proxy uses datagram invocations.
+ </summary>
+ <returns>True if this proxy uses datagram invocations; false, otherwise.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrxHelperBase.ice_batchDatagram">
+ <summary>
+ Creates a new proxy that is identical to this proxy, but uses batch datagram invocations.
+ </summary>
+ <returns>A new proxy that uses batch datagram invocations.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrxHelperBase.ice_isBatchDatagram">
+ <summary>
+ Returns whether this proxy uses batch datagram invocations.
+ </summary>
+ <returns>True if this proxy uses batch datagram invocations; false, otherwise.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrxHelperBase.ice_compress(System.Boolean)">
+ <summary>
+ Creates a new proxy that is identical to this proxy, except for compression.
+ </summary>
+ <param name="co">True enables compression for the new proxy; false disables compression.</param>
+ <returns>A new proxy with the specified compression setting.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrxHelperBase.ice_timeout(System.Int32)">
+ <summary>
+ Creates a new proxy that is identical to this proxy, except for its timeout setting.
+ </summary>
+ <param name="t">The timeout for the new proxy in milliseconds.</param>
+ <returns>A new proxy with the specified timeout.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrxHelperBase.ice_connectionId(System.String)">
+ <summary>
+ Creates a new proxy that is identical to this proxy, except for its connection ID.
+ </summary>
+ <param name="connectionId">The connection ID for the new proxy. An empty string removes the
+ connection ID.</param>
+ <returns>A new proxy with the specified connection ID.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrxHelperBase.ice_getConnectionId">
+ <summary>
+ Returns the connection id of this proxy.
+ </summary>
+ <returns>The connection id.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrxHelperBase.ice_getConnection">
+ <summary>
+ Returns the Connection for this proxy. If the proxy does not yet have an established connection,
+ it first attempts to create a connection.
+ </summary>
+ <returns>The Connection for this proxy.</returns>
+ <exception name="CollocationOptimizationException">If the proxy uses collocation optimization and denotes a
+ collocated object.</exception>
+ </member>
+ <member name="M:Ice.ObjectPrxHelperBase.ice_getCachedConnection">
+ <summary>
+ Returns the cached Connection for this proxy. If the proxy does not yet have an established
+ connection, it does not attempt to create a connection.
+ </summary>
+ <returns>The cached Connection for this proxy (null if the proxy does not have
+ an established connection).</returns>
+ <exception name="CollocationOptimizationException">If the proxy uses collocation optimization and denotes a
+ collocated object.</exception>
+ </member>
+ <member name="M:Ice.ObjectPrxHelperBase.ice_flushBatchRequests">
+ <summary>
+ Flushes any pending batched requests for this communicator. The call blocks until the flush is complete.
+ </summary>
+ </member>
+ <member name="M:Ice.ObjectPrxHelperBase.ice_flushBatchRequests_async(Ice.AMI_Object_ice_flushBatchRequests)">
+ <summary>
+ Asynchronously flushes any pending batched requests for this communicator. The call does not block.
+ </summary>
+ <param name="cb">The callback object to notify the application when the flush is complete.</param>
+ <returns>True if the requests were flushed immediately without blocking; false
+ if the requests could not be flushed immediately.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrxHelperBase.Equals(System.Object)">
+ <summary>
+ Returns whether this proxy equals the passed object. Two proxies are equal if they are equal in all
+ respects, that is, if their object identity, endpoints timeout settings, and so on are all equal.
+ </summary>
+ <param name="r">The object to compare this proxy with.</param>
+ <returns>True if this proxy is equal to r; false, otherwise.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrxHelperBase.Equals(Ice.ObjectPrxHelperBase,Ice.ObjectPrxHelperBase)">
+ <summary>
+ Returns whether two proxies are equal. Two proxies are equal if they are equal in all
+ respects, that is, if their object identity, endpoints timeout settings, and so on are all equal.
+ </summary>
+ <param name="lhs">A proxy to compare with the proxy rhs.</param>
+ <param name="rhs">A proxy to compare with the proxy lhs.</param>
+ <returns>True if the proxies are equal; false, otherwise.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrxHelperBase.op_Equality(Ice.ObjectPrxHelperBase,Ice.ObjectPrxHelperBase)">
+ <summary>
+ Returns whether two proxies are equal. Two proxies are equal if they are equal in all
+ respects, that is, if their object identity, endpoints timeout settings, and so on are all equal.
+ </summary>
+ <param name="lhs">A proxy to compare with the proxy rhs.</param>
+ <param name="rhs">A proxy to compare with the proxy lhs.</param>
+ <returns>True if the proxies are equal; false, otherwise.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrxHelperBase.op_Inequality(Ice.ObjectPrxHelperBase,Ice.ObjectPrxHelperBase)">
+ <summary>
+ Returns whether two proxies are not equal. Two proxies are equal if they are equal in all
+ respects, that is, if their object identity, endpoints timeout settings, and so on are all equal.
+ </summary>
+ <param name="lhs">A proxy to compare with the proxy rhs.</param>
+ <param name="rhs">A proxy to compare with the proxy lhs.</param>
+ <returns>True if the proxies are not equal; false, otherwise.</returns>
+ </member>
+ <member name="T:Ice.ObjectPrxHelper">
+ <summary>
+ Base class for all proxy helpers.
+ </summary>
+ </member>
+ <member name="M:Ice.ObjectPrxHelper.checkedCast(Ice.ObjectPrx)">
+ <summary>
+ Casts a proxy to {@link ObjectPrx}. This call contacts
+ the server and will throw an Ice run-time exception if the target
+ object does not exist or the server cannot be reached.
+ </summary>
+ <param name="b">The proxy to cast to ObjectPrx.</param>
+ <returns>b.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrxHelper.checkedCast(Ice.ObjectPrx,System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Casts a proxy to {@link ObjectPrx}. This call contacts
+ the server and throws an Ice run-time exception if the target
+ object does not exist or the server cannot be reached.
+ </summary>
+ <param name="b">The proxy to cast to ObjectPrx.</param>
+ <param name="ctx">The Context map for the invocation.</param>
+ <returns>b.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrxHelper.checkedCast(Ice.ObjectPrx,System.String)">
+ <summary>
+ Creates a new proxy that is identical to the passed proxy, except
+ for its facet. This call contacts
+ the server and throws an Ice run-time exception if the target
+ object does not exist, the specified facet does not exist, or the server cannot be reached.
+ </summary>
+ <param name="b">The proxy to cast to ObjectPrx.</param>
+ <param name="f">The facet for the new proxy.</param>
+ <returns>The new proxy with the specified facet.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrxHelper.checkedCast(Ice.ObjectPrx,System.String,System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Creates a new proxy that is identical to the passed proxy, except
+ for its facet. This call contacts
+ the server and throws an Ice run-time exception if the target
+ object does not exist, the specified facet does not exist, or the server cannot be reached.
+ </summary>
+ <param name="b">The proxy to cast to ObjectPrx.</param>
+ <param name="f">The facet for the new proxy.</param>
+ <param name="ctx">The Context map for the invocation.</param>
+ <returns>The new proxy with the specified facet.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrxHelper.uncheckedCast(Ice.ObjectPrx)">
+ <summary>
+ Casts a proxy to {@link ObjectPrx}. This call does
+ not contact the server and always succeeds.
+ </summary>
+ <param name="b">The proxy to cast to ObjectPrx.</param>
+ <returns>b.</returns>
+ </member>
+ <member name="M:Ice.ObjectPrxHelper.uncheckedCast(Ice.ObjectPrx,System.String)">
+ <summary>
+ Creates a new proxy that is identical to the passed proxy, except
+ for its facet. This call does not contact the server and always succeeds.
+ </summary>
+ <param name="b">The proxy to cast to ObjectPrx.</param>
+ <param name="f">The facet for the new proxy.</param>
+ <returns>The new proxy with the specified facet.</returns>
+ </member>
+ <member name="T:Ice.ProxyIdentityKey">
+ <summary>
+ This class allows a proxy to be used as the key for a hashed collection.
+ The GetHashCode, Equals, and Compare methods are based on the object identity
+ of the proxy.
+ </summary>
+ </member>
+ <member name="M:Ice.ProxyIdentityKey.GetHashCode(System.Object)">
+ <summary>
+ Computes a hash value based on the object identity of the proxy.
+ </summary>
+ <param name="obj">The proxy whose hash value to compute.</param>
+ <returns>The hash value for the proxy based on the identity.</returns>
+ </member>
+ <member name="M:Ice.ProxyIdentityKey.Equals(System.Object,System.Object)">
+ Compares two proxies for equality.
+ <param name="obj1">A proxy to compare.</param>
+ <param name="obj2">A proxy to compare.</param>
+ <returns>True if the passed proxies have the same object
+ identity; false, otherwise.</returns>
+ </member>
+ <member name="M:Ice.ProxyIdentityKey.Compare(System.Object,System.Object)">
+ Compares two proxies using the object identity for comparison.
+ <param name="obj1">A proxy to compare.</param>
+ <param name="obj2">A proxy to compare.</param>
+ <returns>&lt; 0 if obj1 is less than obj2; &gt; 0 if obj1 is greater than obj2;
+ 0, otherwise.</returns>
+ </member>
+ <member name="T:Ice.ProxyIdentityFacetKey">
+ <summary>
+ This class allows a proxy to be used as the key for a hashed collection.
+ The GetHashCode, Equals, and Compare methods are based on the object identity and
+ the facet of the proxy.
+ </summary>
+ </member>
+ <member name="M:Ice.ProxyIdentityFacetKey.GetHashCode(System.Object)">
+ <summary>
+ Computes a hash value based on the object identity and facet of the proxy.
+ </summary>
+ <param name="obj">The proxy whose hash value to compute.</param>
+ <returns>The hash value for the proxy based on the identity and facet.</returns>
+ </member>
+ <member name="M:Ice.ProxyIdentityFacetKey.Equals(System.Object,System.Object)">
+ Compares two proxies for equality.
+ <param name="obj1">A proxy to compare.</param>
+ <param name="obj2">A proxy to compare.</param>
+ <returns>True if the passed proxies have the same object
+ identity and facet; false, otherwise.</returns>
+ </member>
+ <member name="M:Ice.ProxyIdentityFacetKey.Compare(System.Object,System.Object)">
+ Compares two proxies using the object identity and facet for comparison.
+ <param name="obj1">A proxy to compare.</param>
+ <param name="obj2">A proxy to compare.</param>
+ <returns>&lt; 0 if obj1 is less than obj2; &gt; 0 if obj1 is greater than obj2;
+ 0, otherwise.</returns>
+ </member>
+ <member name="T:Ice.InputStream">
+ <summary>
+ Interface for input streams used to extract Slice types from a sequence of bytes.
+ </summary>
+ </member>
+ <member name="M:Ice.InputStream.communicator">
+ <summary>
+ Returns the communicator for this input stream.
+ </summary>
+ <returns>The communicator.</returns>
+ </member>
+ <member name="M:Ice.InputStream.sliceObjects(System.Boolean)">
+ <summary>
+ Determines the behavior of the stream when extracting Slice objects.
+ A Slice object is "sliced" when a factory cannot be found for a Slice type ID.
+ </summary>
+ <param name="slice">If true (the default), slicing is enabled; if false,
+ slicing is disabled. If slicing is disabled and the stream encounters a Slice type ID
+ during decoding for which no object factory is installed, it raises NoObjectFactoryException.</param>
+ </member>
+ <member name="M:Ice.InputStream.readBool">
+ <summary>
+ Extracts a boolean value from the stream.
+ </summary>
+ <returns>The extracted boolean.</returns>
+ </member>
+ <member name="M:Ice.InputStream.readBoolSeq">
+ <summary>
+ Extracts a sequence of boolean values from the stream.
+ </summary>
+ <returns>The extracted boolean sequence.</returns>
+ </member>
+ <member name="M:Ice.InputStream.readByte">
+ <summary>
+ Extracts a byte value from the stream.
+ </summary>
+ <returns>The extracted byte.</returns>
+ </member>
+ <member name="M:Ice.InputStream.readByteSeq">
+ <summary>
+ Extracts a sequence of byte values from the stream.
+ </summary>
+ <returns>The extracted byte sequence.</returns>
+ </member>
+ <member name="M:Ice.InputStream.readSerializable">
+ <summary>
+ Extracts a serializable .NET object from the stream.
+ </summary>
+ <returns>The deserialized .NET object.</returns>
+ </member>
+ <member name="M:Ice.InputStream.readShort">
+ <summary>
+ Extracts a short value from the stream.
+ </summary>
+ <returns>The extracted short value.</returns>
+ </member>
+ <member name="M:Ice.InputStream.readShortSeq">
+ <summary>
+ Extracts a sequence of short values from the stream.
+ </summary>
+ <returns>The extracted short sequence.</returns>
+ </member>
+ <member name="M:Ice.InputStream.readInt">
+ <summary>
+ Extracts an integer value from the stream.
+ </summary>
+ <returns>The extracted integer value.</returns>
+ </member>
+ <member name="M:Ice.InputStream.readIntSeq">
+ <summary>
+ Extracts a sequence of integer values from the stream.
+ </summary>
+ <returns>The extracted integer sequence.</returns>
+ </member>
+ <member name="M:Ice.InputStream.readLong">
+ <summary>
+ Extracts a long value from the stream.
+ </summary>
+ <returns>The extracted long value.</returns>
+ </member>
+ <member name="M:Ice.InputStream.readLongSeq">
+ <summary>
+ Extracts a sequence of long values from the stream.
+ </summary>
+ <returns>The extracted long sequence.</returns>
+ </member>
+ <member name="M:Ice.InputStream.readFloat">
+ <summary>
+ Extracts a float value from the stream.
+ </summary>
+ <returns>The extracted float value.</returns>
+ </member>
+ <member name="M:Ice.InputStream.readFloatSeq">
+ <summary>
+ Extracts a sequence of float values from the stream.
+ </summary>
+ <returns>The extracted float sequence.</returns>
+ </member>
+ <member name="M:Ice.InputStream.readDouble">
+ <summary>
+ Extracts a double value from the stream.
+ </summary>
+ <returns>The extracted double value.</returns>
+ </member>
+ <member name="M:Ice.InputStream.readDoubleSeq">
+ <summary>
+ Extracts a sequence of double values from the stream.
+ </summary>
+ <returns>The extracted double sequence.</returns>
+ </member>
+ <member name="M:Ice.InputStream.readString">
+ <summary>
+ Extracts a string from the stream.
+ </summary>
+ <returns>The extracted double value.</returns>
+ </member>
+ <member name="M:Ice.InputStream.readStringSeq">
+ <summary>
+ Extracts a sequence of strings from the stream.
+ </summary>
+ <returns>The extracted string sequence.</returns>
+ </member>
+ <member name="M:Ice.InputStream.readSize">
+ <summary>
+ Extracts a size from the stream.
+ </summary>
+ <returns>The extracted size.</returns>
+ </member>
+ <member name="M:Ice.InputStream.readAndCheckSeqSize(System.Int32)">
+ <summary>
+ Extracts and check a sequence size from the stream. The check ensures not too much memory will
+ be pre-allocated for the sequence.
+ </summary>
+ <param name="minSize">The minimum size of an element of the sequence.</param>
+ <returns>The extracted size.</returns>
+ </member>
+ <member name="M:Ice.InputStream.readProxy">
+ <summary>
+ Extracts a proxy from the stream.
+ </summary>
+ <returns>The extracted proxy.</returns>
+ </member>
+ <member name="M:Ice.InputStream.readObject(Ice.ReadObjectCallback)">
+ <summary>
+ Extracts the index of a Slice class from the stream.
+ </summary>
+ <param name="cb">The callback to notify the application when the extracted instance is available.
+ The Ice run time extracts Slice classes in stages. The Ice run time calls ReadObjectCallback.invoke
+ when the corresponding instance has been fully unmarshaled.</param>
+ </member>
+ <member name="M:Ice.InputStream.readTypeId">
+ <summary>
+ Extracts a Slice type ID from the stream.
+ </summary>
+ <returns>The extracted type ID.</returns>
+ </member>
+ <member name="M:Ice.InputStream.throwException">
+ <summary>
+ Extracts a user exception from the stream and throws it.
+ </summary>
+ </member>
+ <member name="M:Ice.InputStream.startSlice">
+ <summary>
+ Reads the start of an object or exception slice.
+ </summary>
+ </member>
+ <member name="M:Ice.InputStream.endSlice">
+ <summary>
+ Indicates that the end of an object or exception slice has been reached.
+ </summary>
+ </member>
+ <member name="M:Ice.InputStream.skipSlice">
+ <summary>
+ Skips over an object or exception slice.
+ </summary>
+ </member>
+ <member name="M:Ice.InputStream.startEncapsulation">
+ <summary>
+ Reads the start of an encapsulation.
+ </summary>
+ </member>
+ <member name="M:Ice.InputStream.endEncapsulation">
+ <summary>
+ Indicates that the end of an encapsulation has been reached.
+ </summary>
+ </member>
+ <member name="M:Ice.InputStream.skipEncapsulation">
+ <summary>
+ Skips over an encapsulation.
+ </summary>
+ </member>
+ <member name="M:Ice.InputStream.getEncapsulationSize">
+ <summary>
+ Returns the size of the current encapsulation.
+ </summary>
+ <returns>The size of the current encapsulation.</returns>
+ </member>
+ <member name="M:Ice.InputStream.readBlob(System.Int32)">
+ <summary>
+ Reads the specified number of bytes from the stream.
+ </summary>
+ <returns>The bytes read.</returns>
+ </member>
+ <member name="M:Ice.InputStream.readPendingObjects">
+ <summary>
+ Indicates that unmarshaling is complete, except for any Slice objects. The application must
+ call this method only if the stream actually contains Slice objects. Calling readPendingObjects
+ triggers the calls to ReadObjectCallback.invoke that inform the application that unmarshaling
+ of a Slice object is complete.
+ </summary>
+ </member>
+ <member name="M:Ice.InputStream.rewind">
+ <summary>
+ Resets the read position of the stream to the beginning.
+ </summary>
+ </member>
+ <member name="M:Ice.InputStream.destroy">
+ <summary>
+ Destroys the stream and its associated resources. The application must call destroy prior
+ to releasing the last reference to a stream; failure to do so may result in resource leaks.
+ </summary>
+ </member>
+ <member name="T:Ice.OutputStream">
+ <summary>
+ Interface for output streams used to write Slice types to a sequence
+ of bytes.
+ </summary>
+ </member>
+ <member name="M:Ice.OutputStream.communicator">
+ <summary>
+ Returns the communicator for this output stream.
+ </summary>
+ </member>
+ <member name="M:Ice.OutputStream.writeBool(System.Boolean)">
+ <summary>
+ Writes a boolean to the stream.
+ </summary>
+ <param name="v">The boolean to write to the stream.</param>
+ </member>
+ <member name="M:Ice.OutputStream.writeBoolSeq(System.Boolean[])">
+ <summary>
+ Writes a sequence of booleans to the stream.
+ </summary>
+ <param name="v">The sequence of booleans to write.
+ Passing null causes an empty sequence to be written to the stream.</param>
+ </member>
+ <member name="M:Ice.OutputStream.writeByte(System.Byte)">
+ <summary>
+ Writes a byte to the stream.
+ </summary>
+ <param name="v">The byte to write to the stream.</param>
+ </member>
+ <member name="M:Ice.OutputStream.writeByteSeq(System.Byte[])">
+ <summary>
+ Writes a sequence of bytes to the stream.
+ </summary>
+ <param name="v">The sequence of bytes to write.
+ Passing null causes an empty sequence to be written to the stream.</param>
+ </member>
+ <member name="M:Ice.OutputStream.writeSerializable(System.Object)">
+ <summary>
+ Writes a serializable .NET object to the stream.
+ </summary>
+ <param name="v">The serializable object to write.</param>
+ </member>
+ <member name="M:Ice.OutputStream.writeShort(System.Int16)">
+ <summary>
+ Writes a short to the stream.
+ </summary>
+ <param name="v">The short to write to the stream.</param>
+ </member>
+ <member name="M:Ice.OutputStream.writeShortSeq(System.Int16[])">
+ <summary>
+ Writes a sequence of shorts to the stream.
+ </summary>
+ <param name="v">The sequence of shorts to write.
+ Passing null causes an empty sequence to be written to the stream.</param>
+ </member>
+ <member name="M:Ice.OutputStream.writeInt(System.Int32)">
+ <summary>
+ Writes an integer to the stream.
+ </summary>
+ <param name="v">The integer to write to the stream.</param>
+ </member>
+ <member name="M:Ice.OutputStream.writeIntSeq(System.Int32[])">
+ <summary>
+ Writes a sequence of integers to the stream.
+ </summary>
+ <param name="v">The sequence of integers to write.
+ Passing null causes an empty sequence to be written to the stream.</param>
+ </member>
+ <member name="M:Ice.OutputStream.writeLong(System.Int64)">
+ <summary>
+ Writes a long to the stream.
+ </summary>
+ <param name="v">The long to write to the stream.</param>
+ </member>
+ <member name="M:Ice.OutputStream.writeLongSeq(System.Int64[])">
+ <summary>
+ Writes a sequence of longs to the stream.
+ </summary>
+ <param name="v">The sequence of longs to write.
+ Passing null causes an empty sequence to be written to the stream.</param>
+ </member>
+ <member name="M:Ice.OutputStream.writeFloat(System.Single)">
+ <summary>
+ Writes a float to the stream.
+ </summary>
+ <param name="v">The float to write to the stream.</param>
+ </member>
+ <member name="M:Ice.OutputStream.writeFloatSeq(System.Single[])">
+ <summary>
+ Writes a sequence of floats to the stream.
+ </summary>
+ <param name="v">The sequence of floats to write.
+ Passing null causes an empty sequence to be written to the stream.</param>
+ </member>
+ <member name="M:Ice.OutputStream.writeDouble(System.Double)">
+ <summary>
+ Writes a double to the stream.
+ </summary>
+ <param name="v">The double to write to the stream.</param>
+ </member>
+ <member name="M:Ice.OutputStream.writeDoubleSeq(System.Double[])">
+ <summary>
+ Writes a sequence of doubles to the stream.
+ </summary>
+ <param name="v">The sequence of doubles to write.
+ Passing null causes an empty sequence to be written to the stream.</param>
+ </member>
+ <member name="M:Ice.OutputStream.writeString(System.String)">
+ <summary>
+ Writes a string to the stream.
+ </summary>
+ <param name="v">The string to write to the stream.
+ Passing null causes an empty string to be written to the stream.</param>
+ </member>
+ <member name="M:Ice.OutputStream.writeStringSeq(System.String[])">
+ <summary>
+ Writes a sequence of strings to the stream.
+ </summary>
+ <param name="v">The sequence of strings to write.
+ Passing null causes an empty sequence to be written to the stream.</param>
+ </member>
+ <member name="M:Ice.OutputStream.writeSize(System.Int32)">
+ <summary>
+ Writes a size to the stream.
+ </summary>
+ <param name="sz">The size to write.</param>
+ </member>
+ <member name="M:Ice.OutputStream.writeProxy(Ice.ObjectPrx)">
+ <summary>
+ Writes a proxy to the stream.
+ </summary>
+ <param name="v">The proxy to write.</param>
+ </member>
+ <member name="M:Ice.OutputStream.writeObject(Ice.Object)">
+ <summary>
+ Writes a Slice class to the stream.
+ </summary>
+ <param name="v">The class to write. This method writes the index of a Slice class; the state of the
+ class is written once writePendingObjects is called.</param>
+ </member>
+ <member name="M:Ice.OutputStream.writeTypeId(System.String)">
+ <summary>
+ Writes a Slice type ID to the stream.
+ </summary>
+ <param name="id">The Slice type ID to write.</param>
+ </member>
+ <member name="M:Ice.OutputStream.writeException(Ice.UserException)">
+ <summary>
+ Writes a user exception to the stream.
+ </summary>
+ <param name="ex">The user exception to write.</param>
+ </member>
+ <member name="M:Ice.OutputStream.startSlice">
+ <summary>
+ Writes the start of a slice to the stream.
+ </summary>
+ </member>
+ <member name="M:Ice.OutputStream.endSlice">
+ <summary>
+ Ends the previous slice.
+ </summary>
+ </member>
+ <member name="M:Ice.OutputStream.startEncapsulation">
+ <summary>
+ Writes the start of an encapsulation to the stream.
+ </summary>
+ </member>
+ <member name="M:Ice.OutputStream.endEncapsulation">
+ <summary>
+ Ends the previous encapsulation.
+ </summary>
+ </member>
+ <member name="M:Ice.OutputStream.writeBlob(System.Byte[])">
+ <summary>
+ Writes the specified bytes onto the stream.
+ </summary>
+ </member>
+ <member name="M:Ice.OutputStream.writePendingObjects">
+ <summary>
+ Writes the state of Slice classes whose index was previously
+ written with writeObject to the stream.
+ </summary>
+ </member>
+ <member name="M:Ice.OutputStream.finished">
+ <summary>
+ Indicates that the marshaling of a request or reply is finished.
+ </summary>
+ <returns>The byte sequence containing the encoded request or reply.</returns>
+ </member>
+ <member name="M:Ice.OutputStream.reset(System.Boolean)">
+ <summary>
+ Resets this output stream. This method allows the stream to be reused, to avoid creating
+ unnecessary garbage.
+ </summary>
+
+ <param name="clearBuffer">If true, the stream's internal buffer becomes eligible for
+ garbage collection; if false, the stream's internal buffer is retained, to avoid
+ creating unnecessary garbage. If retained, the internal buffer may be resized to a smaller
+ capacity. Either way, reset resets the stream's writing position to zero.</param>
+ </member>
+ <member name="M:Ice.OutputStream.destroy">
+ <summary>
+ Destroys the stream and its associated resources. The application must call destroy prior
+ to releasing the last reference to a stream; failure to do so may result in resource leaks.
+ </summary>
+ </member>
+ <member name="T:Ice.ObjectReader">
+ <summary>
+ Base class for extracting objects from an input stream.
+ </summary>
+ </member>
+ <member name="M:Ice.ObjectReader.read(Ice.InputStream,System.Boolean)">
+ <summary>
+ @param in The input stream to read from.
+ @param rid If <code>true</code>, extraction begins by reading a Slice type ID
+ first. If <code>false</code>, the leading type ID is not read. This is used
+ by the unmarshaling code in case the type ID has already been read as part
+ of other unmarshaling activities.
+ </summary>
+ </member>
+ <member name="T:Ice.ObjectWriter">
+ <summary>
+ Base class for writing objects to an output stream.
+ </summary>
+ </member>
+ <member name="M:Ice.ObjectWriter.write(Ice.OutputStream)">
+ <summary>
+ Writes the state of this Slice class to an output stream.
+ </summary>
+ <param name="outStream">The stream to write to.</param>
+ </member>
+ <member name="T:Ice.ThreadHookPlugin">
+ <summary>
+ Class to support thread notification hooks. Applications using
+ thread notification hooks instantiate a ThreadHookPlugin with a
+ thread notification hook and return the instance from their
+ PluginFactory implementation.
+ </summary>
+ </member>
+ <member name="M:Ice.ThreadHookPlugin.#ctor(Ice.Communicator,Ice.ThreadNotification)">
+ <summary>
+ Installs a custom logger for a communicator.
+ </summary>
+ <param name="communicator">The communicator using the thread notification hook.</param>
+ <param name="threadHook">The thread notification hook for the communicator.</param>
+ </member>
+ <member name="M:Ice.ThreadHookPlugin.initialize">
+ <summary>
+ Called by the Ice run time during communicator initialization. The derived class
+ can override this method to perform any initialization that might be required
+ by the thread notification hook.
+ </summary>
+ </member>
+ <member name="M:Ice.ThreadHookPlugin.destroy">
+ <summary>
+ Called by the Ice run time when the communicator is destroyed. The derived class
+ can override this method to perform any finalization that might be required
+ by thread notification hook.
+ </summary>
+ </member>
+ <member name="T:Ice.TieBase">
+ <summary>
+ Interface for servants using the tie mapping.
+ </summary>
+ </member>
+ <member name="M:Ice.TieBase.ice_delegate">
+ <summary>
+ Returns the delegate for this tie.
+ </summary>
+ <returns>The delegate.</returns>
+ </member>
+ <member name="M:Ice.TieBase.ice_delegate(System.Object)">
+ <summary>
+ Returns the delegate for this tie.
+ </summary>
+ <param name="o">The delegate.</param>
+ </member>
+ <member name="T:Ice.ThreadNotification">
+ <summary>
+ Interface for thread notification hooks. Applications can derive
+ a class tat implements the start and stop
+ methods to intercept creation and destruction of threads created
+ by the Ice run time.
+ </summary>
+ </member>
+ <member name="M:Ice.ThreadNotification.start">
+ <summary>
+ The Ice run time calls start for each new
+ thread it creates. The call is made by the newly-started thread.
+ </summary>
+ </member>
+ <member name="M:Ice.ThreadNotification.stop">
+ <summary>
+ The Ice run time calls stop before it destroys
+ a thread. The call is made by thread that is about to be
+ destroyed.
+ </summary>
+ </member>
+ <member name="T:Ice.Dispatcher">
+ <summary>
+ A delegate for the dispatcher. The dispatcher is called by the Ice
+ runtime to dispatch servant calls and AMI callbacks.
+ </summary>
+ </member>
+ <member name="T:Ice.InitializationData">
+ <summary>
+ A class that encpasulates data to initalize a communicator.
+ </summary>
+ </member>
+ <member name="M:Ice.InitializationData.Clone">
+ <summary>
+ Creates and returns a copy of this object.
+ </summary>
+ </member>
+ <member name="F:Ice.InitializationData.properties">
+ <summary>
+ The properties for the communicator.
+ </summary>
+ </member>
+ <member name="F:Ice.InitializationData.logger">
+ <summary>
+ The logger for the communicator.
+ </summary>
+ </member>
+ <member name="F:Ice.InitializationData.stats">
+ <summary>
+ The Stats instance for the communicator.
+ </summary>
+ </member>
+ <member name="F:Ice.InitializationData.threadHook">
+ <summary>
+ The thread hook for the communicator.
+ </summary>
+ </member>
+ <member name="F:Ice.InitializationData.dispatcher">
+ <summary>
+ The dispatcher for the communicator.
+ </summary>
+ </member>
+ <member name="T:Ice.Util">
+ <summary>
+ Utility methods for the Ice run time.
+ </summary>
+ </member>
+ <member name="M:Ice.Util.createProperties">
+ <summary>
+ Creates a new empty property set.
+ </summary>
+ <returns>A new empty property set.</returns>
+ </member>
+ <member name="M:Ice.Util.createProperties(System.String[]@)">
+ <summary>
+ Creates a property set initialized from an argument vector.
+ </summary>
+ <param name="args">A command-line argument vector, possibly containing
+ options to set properties. If the command-line options include
+ a --Ice.Config option, the corresponding configuration
+ files are parsed. If the same property is set in a configuration
+ file and in the argument vector, the argument vector takes precedence.
+ This method modifies the argument vector by removing any Ice-related options.</param>
+ <returns>A property set initialized with the property settings
+ that were removed from args.</returns>
+ </member>
+ <member name="M:Ice.Util.createProperties(System.String[]@,Ice.Properties)">
+ <summary>
+ Creates a property set initialized from an argument vector.
+ </summary>
+ <param name="args">A command-line argument vector, possibly containing
+ options to set properties. If the command-line options include
+ a --Ice.Config option, the corresponding configuration
+ files are parsed. If the same property is set in a configuration
+ file and in the argument vector, the argument vector takes precedence.
+ This method modifies the argument vector by removing any Ice-related options.</param>
+ <param name="defaults">Default values for the property set. Settings in configuration
+ files and args override these defaults.</param>
+ <returns>A property set initialized with the property settings
+ that were removed from args.</returns>
+ </member>
+ <member name="M:Ice.Util.initialize(System.String[]@)">
+ <summary>
+ Creates a communicator.
+ </summary>
+ <param name="args">A command-line argument vector. Any Ice-related options
+ in this vector are used to intialize the communicator.
+ This method modifies the argument vector by removing any Ice-related options.</param>
+ <returns>The initialized communicator.</returns>
+ </member>
+ <member name="M:Ice.Util.initialize(System.String[]@,Ice.InitializationData)">
+ <summary>
+ Creates a communicator.
+ </summary>
+ <param name="args">A command-line argument vector. Any Ice-related options
+ in this vector are used to intialize the communicator.
+ This method modifies the argument vector by removing any Ice-related options.</param>
+ <param name="initData">Additional intialization data. Property settings in args
+ override property settings in initData.</param>
+ <returns>The initialized communicator.</returns>
+ </member>
+ <member name="M:Ice.Util.initialize(Ice.InitializationData)">
+ <summary>
+ Creates a communicator.
+ </summary>
+ <param name="initData">Additional intialization data.</param>
+ <returns>The initialized communicator.</returns>
+ </member>
+ <member name="M:Ice.Util.initialize">
+ <summary>
+ Creates a communicator using a default configuration.
+ </summary>
+ </member>
+ <member name="M:Ice.Util.stringToIdentity(System.String)">
+ <summary>
+ Converts a string to an object identity.
+ </summary>
+ <param name="s">The string to convert.</param>
+ <returns>The converted object identity.</returns>
+ </member>
+ <member name="M:Ice.Util.identityToString(Ice.Identity)">
+ <summary>
+ Converts an object identity to a string.
+ </summary>
+ <param name="ident">The object identity to convert.</param>
+ <returns>The string representation of the object identity.</returns>
+ </member>
+ <member name="M:Ice.Util.generateUUID">
+ <summary>
+ This method is deprecated. Use System.Guid instead.
+ </summary>
+ </member>
+ <member name="M:Ice.Util.proxyIdentityCompare(Ice.ObjectPrx,Ice.ObjectPrx)">
+ <summary>
+ Compares the object identities of two proxies.
+ </summary>
+ <param name="lhs">A proxy.</param>
+ <param name="rhs">A proxy.</param>
+ <returns>-1 if the identity in lhs compares
+ less than the identity in rhs; 0 if the identities
+ compare equal; 1, otherwise.</returns>
+ </member>
+ <member name="M:Ice.Util.proxyIdentityAndFacetCompare(Ice.ObjectPrx,Ice.ObjectPrx)">
+ <summary>
+ Compares the object identities and facets of two proxies.
+ </summary>
+ <param name="lhs">A proxy.</param>
+ <param name="rhs">A proxy.</param>
+ <returns>-1 if the identity and facet in lhs compare
+ less than the identity and facet in rhs; 0 if the identities
+ and facets compare equal; 1, otherwise.</returns>
+ </member>
+ <member name="M:Ice.Util.createInputStream(Ice.Communicator,System.Byte[])">
+ <summary>
+ Creates an input stream for dynamic invocation and dispatch.
+ </summary>
+ <param name="communicator">The communicator for the stream.</param>
+ <param name="bytes">An encoded request or reply.</param>
+ <returns>The input stream.</returns>
+ </member>
+ <member name="M:Ice.Util.createOutputStream(Ice.Communicator)">
+ <summary>
+ Creates an output stream for dynamic invocation and dispatch.
+ </summary>
+ <param name="communicator">The communicator for the stream.</param>
+ <returns>The output stream.</returns>
+ </member>
+ <member name="M:Ice.Util.getProcessLogger">
+ <summary>
+ Returns the process-wide logger.
+ </summary>
+ <returns>The process-wide logger.</returns>
+ </member>
+ <member name="M:Ice.Util.setProcessLogger(Ice.Logger)">
+ <summary>
+ Changes the process-wide logger.
+ </summary>
+ <param name="logger">The new process-wide logger.</param>
+ </member>
+ <member name="M:Ice.Util.stringVersion">
+ <summary>
+ Returns the Ice version in the form A.B.C, where A indicates the
+ major version, B indicates the minor version, and C indicates the
+ patch level.
+ </summary>
+ <returns>The Ice version.</returns>
+ </member>
+ <member name="M:Ice.Util.intVersion">
+ <summary>
+ Returns the Ice version as an integer in the form A.BB.CC, where A
+ indicates the major version, BB indicates the minor version, and CC
+ indicates the patch level. For example, for Ice 3.3.1, the returned value is 30301.
+ </summary>
+ <returns>The Ice version.</returns>
+ </member>
+ <member name="T:Ice.InitializationException">
+ <summary>
+ This exception is raised when a failure occurs during initialization.
+ </summary>
+ </member>
+ <member name="T:Ice.PluginInitializationException">
+ <summary>
+ This exception indicates that a failure occurred while initializing
+ a plug-in.
+ </summary>
+ </member>
+ <member name="T:Ice.CollocationOptimizationException">
+ <summary>
+ This exception is raised if a feature is requested that is not
+ supported with collocation optimization.
+ </summary>
+ </member>
+ <member name="T:Ice.AlreadyRegisteredException">
+ <summary>
+ An attempt was made to register something more than once with
+ the Ice run time.
+ This exception is raised if an attempt is made to register a
+ servant, servant locator, facet, object factory, plug-in, object
+ adapter, object, or user exception factory more than once for the
+ same ID.
+ </summary>
+ </member>
+ <member name="T:Ice.NotRegisteredException">
+ <summary>
+ An attempt was made to find or deregister something that is not
+ registered with the Ice run time or Ice locator.
+ This exception is raised if an attempt is made to remove a servant,
+ servant locator, facet, object factory, plug-in, object adapter,
+ object, or user exception factory that is not currently registered.
+
+ It's also raised if the Ice locator can't find an object or object
+ adapter when resolving an indirect proxy or when an object adapter
+ is activated.
+ </summary>
+ </member>
+ <member name="T:Ice.TwowayOnlyException">
+ <summary>
+ The operation can only be invoked with a twoway request.
+ This exception is raised if an attempt is made to invoke an
+ operation with ice_oneway, ice_batchOneway, ice_datagram,
+ or ice_batchDatagram and the operation has a return value,
+ out-parameters, or an exception specification.
+ </summary>
+ </member>
+ <member name="T:Ice.CloneNotImplementedException">
+ <summary>
+ An attempt was made to clone a class that does not support
+ cloning.
+ This exception is raised if ice_clone is called on
+ a class that is derived from an abstract Slice class (that is,
+ a class containing operations), and the derived class does not
+ provide an implementation of the ice_clone operation (C++ only).
+ </summary>
+ </member>
+ <member name="T:Ice.UnknownException">
+ <summary>
+ This exception is raised if an operation call on a server raises an
+ unknown exception.
+ For example, for C++, this exception is raised
+ if the server throws a C++ exception that is not directly or
+ indirectly derived from Ice::LocalException or
+ Ice::UserException.
+ </summary>
+ </member>
+ <member name="T:Ice.UnknownLocalException">
+ <summary>
+ This exception is raised if an operation call on a server raises a
+ local exception.
+ Because local exceptions are not transmitted by
+ the Ice protocol, the client receives all local exceptions raised
+ by the server as UnknownLocalException. The only exception to this
+ rule are all exceptions derived from RequestFailedException,
+ which are transmitted by the Ice protocol even though they are
+ declared local.
+ </summary>
+ </member>
+ <member name="T:Ice.UnknownUserException">
+ <summary>
+ An operation raised an incorrect user exception.
+ This exception is raised if an operation raises a
+ user exception that is not declared in the exception's
+ throws clause. Such undeclared exceptions are
+ not transmitted from the server to the client by the Ice
+ protocol, but instead the client just gets an
+ UnknownUserException. This is necessary in order to not violate
+ the contract established by an operation's signature: Only local
+ exceptions and user exceptions declared in the
+ throws clause can be raised.
+ </summary>
+ </member>
+ <member name="T:Ice.VersionMismatchException">
+ <summary>
+ This exception is raised if the Ice library version does not match
+ the version in the Ice header files.
+ </summary>
+ </member>
+ <member name="T:Ice.CommunicatorDestroyedException">
+ <summary>
+ This exception is raised if the Communicator has been destroyed.
+ </summary>
+ </member>
+ <member name="T:Ice.ObjectAdapterDeactivatedException">
+ <summary>
+ This exception is raised if an attempt is made to use a deactivated
+ ObjectAdapter.
+ </summary>
+ </member>
+ <member name="T:Ice.ObjectAdapterIdInUseException">
+ <summary>
+ This exception is raised if an ObjectAdapter cannot be activated.
+ This happens if the Locator detects another active ObjectAdapter with
+ the same adapter id.
+ </summary>
+ </member>
+ <member name="T:Ice.NoEndpointException">
+ <summary>
+ This exception is raised if no suitable endpoint is available.
+ </summary>
+ </member>
+ <member name="T:Ice.EndpointParseException">
+ <summary>
+ This exception is raised if there was an error while parsing an
+ endpoint.
+ </summary>
+ </member>
+ <member name="T:Ice.EndpointSelectionTypeParseException">
+ <summary>
+ This exception is raised if there was an error while parsing an
+ endpoint selection type.
+ </summary>
+ </member>
+ <member name="T:Ice.IdentityParseException">
+ <summary>
+ This exception is raised if there was an error while parsing a
+ stringified identity.
+ </summary>
+ </member>
+ <member name="T:Ice.ProxyParseException">
+ <summary>
+ This exception is raised if there was an error while parsing a
+ stringified proxy.
+ </summary>
+ </member>
+ <member name="T:Ice.IllegalIdentityException">
+ <summary>
+ This exception is raised if an illegal identity is encountered.
+ </summary>
+ </member>
+ <member name="T:Ice.RequestFailedException">
+ <summary>
+ This exception is raised if a request failed.
+ This exception, and
+ all exceptions derived from RequestFailedException, are
+ transmitted by the Ice protocol, even though they are declared
+ local.
+ </summary>
+ </member>
+ <member name="T:Ice.ObjectNotExistException">
+ <summary>
+ This exception is raised if an object does not exist on the server,
+ that is, if no facets with the given identity exist.
+ </summary>
+ </member>
+ <member name="T:Ice.FacetNotExistException">
+ <summary>
+ This exception is raised if no facet with the given name exists,
+ but at least one facet with the given identity exists.
+ </summary>
+ </member>
+ <member name="T:Ice.OperationNotExistException">
+ <summary>
+ This exception is raised if an operation for a given object does
+ not exist on the server.
+ Typically this is caused by either the
+ client or the server using an outdated Slice specification.
+ </summary>
+ </member>
+ <member name="T:Ice.SyscallException">
+ <summary>
+ This exception is raised if a system error occurred in the server
+ or client process.
+ There are many possible causes for such a system
+ exception. For details on the cause, SyscallException.error
+ should be inspected.
+ </summary>
+ </member>
+ <member name="T:Ice.SocketException">
+ <summary>
+ This exception indicates socket errors.
+ </summary>
+ </member>
+ <member name="T:Ice.FileException">
+ <summary>
+ This exception indicates file errors.
+ </summary>
+ </member>
+ <member name="T:Ice.ConnectFailedException">
+ <summary>
+ This exception indicates connection failures.
+ </summary>
+ </member>
+ <member name="T:Ice.ConnectionRefusedException">
+ <summary>
+ This exception indicates a connection failure for which
+ the server host actively refuses a connection.
+ </summary>
+ </member>
+ <member name="T:Ice.ConnectionLostException">
+ <summary>
+ This exception indicates a lost connection.
+ </summary>
+ </member>
+ <member name="T:Ice.DNSException">
+ <summary>
+ This exception indicates a DNS problem.
+ For details on the cause,
+ DNSException.error should be inspected.
+ </summary>
+ </member>
+ <member name="T:Ice.TimeoutException">
+ <summary>
+ This exception indicates a timeout condition.
+ </summary>
+ </member>
+ <member name="T:Ice.ConnectTimeoutException">
+ <summary>
+ This exception indicates a connection establishment timeout condition.
+ </summary>
+ </member>
+ <member name="T:Ice.CloseTimeoutException">
+ <summary>
+ This exception indicates a connection closure timeout condition.
+ </summary>
+ </member>
+ <member name="T:Ice.ConnectionTimeoutException">
+ <summary>
+ This exception indicates that a connection has been shut down because it has been
+ idle for some time.
+ </summary>
+ </member>
+ <member name="T:Ice.ProtocolException">
+ <summary>
+ A generic exception base for all kinds of protocol error
+ conditions.
+ </summary>
+ </member>
+ <member name="T:Ice.BadMagicException">
+ <summary>
+ This exception indicates that a message did not start with the expected
+ magic number ('I', 'c', 'e', 'P').
+ </summary>
+ </member>
+ <member name="T:Ice.UnsupportedProtocolException">
+ <summary>
+ This exception indicates an unsupported protocol version.
+ </summary>
+ </member>
+ <member name="T:Ice.UnsupportedEncodingException">
+ <summary>
+ This exception indicates an unsupported data encoding version.
+ </summary>
+ </member>
+ <member name="T:Ice.UnknownMessageException">
+ <summary>
+ This exception indicates that an unknown protocol message has been received.
+ </summary>
+ </member>
+ <member name="T:Ice.ConnectionNotValidatedException">
+ <summary>
+ This exception is raised if a message is received over a connection
+ that is not yet validated.
+ </summary>
+ </member>
+ <member name="T:Ice.UnknownRequestIdException">
+ <summary>
+ This exception indicates that a response for an unknown request ID has been
+ received.
+ </summary>
+ </member>
+ <member name="T:Ice.UnknownReplyStatusException">
+ <summary>
+ This exception indicates that an unknown reply status has been received.
+ </summary>
+ </member>
+ <member name="T:Ice.CloseConnectionException">
+ <summary>
+ This exception indicates that the connection has been gracefully shut down by the
+ server.
+ The operation call that caused this exception has not been
+ executed by the server. In most cases you will not get this
+ exception, because the client will automatically retry the
+ operation call in case the server shut down the connection. However,
+ if upon retry the server shuts down the connection again, and the
+ retry limit has been reached, then this exception is propagated to
+ the application code.
+ </summary>
+ </member>
+ <member name="T:Ice.ForcedCloseConnectionException">
+ <summary>
+ This exception is raised by an operation call if the application
+ forcefully closes the connection Connection.close.
+ </summary>
+ </member>
+ <member name="T:Ice.IllegalMessageSizeException">
+ <summary>
+ This exception indicates that a message size is less
+ than the minimum required size.
+ </summary>
+ </member>
+ <member name="T:Ice.CompressionException">
+ <summary>
+ This exception indicates a problem with compressing or uncompressing data.
+ </summary>
+ </member>
+ <member name="T:Ice.DatagramLimitException">
+ <summary>
+ A datagram exceeds the configured size.
+ This exception is raised if a datagram exceeds the configured send or receive buffer
+ size, or exceeds the maximum payload size of a UDP packet (65507 bytes).
+ </summary>
+ </member>
+ <member name="T:Ice.MarshalException">
+ <summary>
+ This exception is raised for errors during marshaling or unmarshaling data.
+ </summary>
+ </member>
+ <member name="T:Ice.ProxyUnmarshalException">
+ <summary>
+ This exception is raised if inconsistent data is received while unmarshaling a proxy.
+ </summary>
+ </member>
+ <member name="T:Ice.UnmarshalOutOfBoundsException">
+ <summary>
+ This exception is raised if an out-of-bounds condition occurs during unmarshaling.
+ </summary>
+ </member>
+ <member name="T:Ice.NoObjectFactoryException">
+ <summary>
+ This exception is raised if no suitable object factory was found during
+ unmarshaling of a Slice class instance.
+ </summary>
+ </member>
+ <member name="T:Ice.UnexpectedObjectException">
+ <summary>
+ This exception is raised if the type of an unmarshaled Slice class instance does
+ not match its expected type.
+ This can happen if client and server are compiled with mismatched Slice
+ definitions or if a class of the wrong type is passed as a parameter
+ or return value using dynamic invocation. This exception can also be
+ raised if IceStorm is used to send Slice class instances and
+ an operation is subscribed to the wrong topic.
+ </summary>
+ </member>
+ <member name="T:Ice.MemoryLimitException">
+ <summary>
+ This exception is raised if a request size exceeds the limit specified by the Ice.MessageSizeMax property.
+ </summary>
+ </member>
+ <member name="T:Ice.StringConversionException">
+ <summary>
+ This exception is
+ raised when a string conversion to or from UTF-8 fails during
+ marshaling or unmarshaling.
+ </summary>
+ </member>
+ <member name="T:Ice.EncapsulationException">
+ <summary>
+ This exception indicates a malformed data encapsulation.
+ </summary>
+ </member>
+ <member name="T:Ice.FeatureNotSupportedException">
+ <summary>
+ This exception is raised if an unsupported feature is used.
+ The
+ unsupported feature string contains the name of the unsupported
+ feature
+ </summary>
+ </member>
+ <member name="T:Ice.SecurityException">
+ <summary>
+ This exception indicates a failure in a security subsystem,
+ such as the IceSSL plug-in.
+ </summary>
+ </member>
+ <member name="T:Ice.FixedProxyException">
+ <summary>
+ This exception indicates that an attempt has been made to
+ change the connection properties of a fixed proxy.
+ </summary>
+ </member>
+ <member name="T:Ice.ResponseSentException">
+ <summary>
+ Indicates that the response to a request has already been sent;
+ re-dispatching such a request is not possible.
+ </summary>
+ </member>
+ <member name="T:Ice.AdapterNotFoundException">
+ <summary>
+ This exception is raised if an adapter cannot be found.
+ </summary>
+ </member>
+ <member name="T:Ice.InvalidReplicaGroupIdException">
+ <summary>
+ This exception is raised if the replica group provided by the
+ server is invalid.
+ </summary>
+ </member>
+ <member name="T:Ice.AdapterAlreadyActiveException">
+ <summary>
+ This exception is raised if a server tries to set endpoints for
+ an adapter that is already active.
+ </summary>
+ </member>
+ <member name="T:Ice.ObjectNotFoundException">
+ <summary>
+ This exception is raised if an object cannot be found.
+ </summary>
+ </member>
+ <member name="T:Ice.ServerNotFoundException">
+ <summary>
+ This exception is raised if a server cannot be found.
+ </summary>
+ </member>
+ <member name="T:Ice.LocatorOperations_">
+ <summary>
+ The Ice locator interface.
+ This interface is used by clients to
+ lookup adapters and objects. It is also used by servers to get the
+ locator registry proxy.
+
+ The Locator interface is intended to be used by
+ Ice internals and by locator implementations. Regular user code
+ should not attempt to use any functionality of this interface
+ directly.
+ </summary>
+ </member>
+ <member name="M:Ice.LocatorOperations_.findObjectById_async(Ice.AMD_Locator_findObjectById,Ice.Identity,Ice.Current)">
+ <summary>
+ Find an object by identity and return its proxy.
+ </summary>
+ <param name="cb__">The callback object for the operation.</param>
+ <param name="id">The identity.
+
+ </param>
+ <param name="current__">The Current object for the invocation.</param>
+ </member>
+ <member name="M:Ice.LocatorOperations_.findAdapterById_async(Ice.AMD_Locator_findAdapterById,System.String,Ice.Current)">
+ <summary>
+ Find an adapter by id and return its proxy (a dummy direct
+ proxy created by the adapter).
+ </summary>
+ <param name="cb__">The callback object for the operation.</param>
+ <param name="id">The adapter id.
+
+ </param>
+ <param name="current__">The Current object for the invocation.</param>
+ </member>
+ <member name="M:Ice.LocatorOperations_.getRegistry(Ice.Current)">
+ <summary>
+ Get the locator registry.
+ </summary>
+ <returns>The locator registry.</returns>
+ <param name="current__">The Current object for the invocation.</param>
+ </member>
+ <member name="T:Ice.LocatorOperationsNC_">
+ <summary>
+ The Ice locator interface.
+ This interface is used by clients to
+ lookup adapters and objects. It is also used by servers to get the
+ locator registry proxy.
+
+ The Locator interface is intended to be used by
+ Ice internals and by locator implementations. Regular user code
+ should not attempt to use any functionality of this interface
+ directly.
+ </summary>
+ </member>
+ <member name="M:Ice.LocatorOperationsNC_.findObjectById_async(Ice.AMD_Locator_findObjectById,Ice.Identity)">
+ <summary>
+ Find an object by identity and return its proxy.
+ </summary>
+ <param name="cb__">The callback object for the operation.</param>
+ <param name="id">The identity.
+
+ </param>
+ </member>
+ <member name="M:Ice.LocatorOperationsNC_.findAdapterById_async(Ice.AMD_Locator_findAdapterById,System.String)">
+ <summary>
+ Find an adapter by id and return its proxy (a dummy direct
+ proxy created by the adapter).
+ </summary>
+ <param name="cb__">The callback object for the operation.</param>
+ <param name="id">The adapter id.
+
+ </param>
+ </member>
+ <member name="M:Ice.LocatorOperationsNC_.getRegistry">
+ <summary>
+ Get the locator registry.
+ </summary>
+ <returns>The locator registry.</returns>
+ </member>
+ <member name="T:Ice.LocatorRegistryOperations_">
+ <summary>
+ The Ice locator registry interface.
+ This interface is used by
+ servers to register adapter endpoints with the locator.
+
+ The LocatorRegistry interface is intended to be used
+ by Ice internals and by locator implementations. Regular user
+ code should not attempt to use any functionality of this interface
+ directly.
+ </summary>
+ </member>
+ <member name="M:Ice.LocatorRegistryOperations_.setAdapterDirectProxy_async(Ice.AMD_LocatorRegistry_setAdapterDirectProxy,System.String,Ice.ObjectPrx,Ice.Current)">
+ <summary>
+ Set the adapter endpoints with the locator registry.
+ </summary>
+ <param name="cb__">The callback object for the operation.</param>
+ <param name="id">The adapter id.
+
+ </param>
+ <param name="proxy">The adapter proxy (a dummy direct proxy created
+ by the adapter). The direct proxy contains the adapter
+ endpoints.
+
+ </param>
+ <param name="current__">The Current object for the invocation.</param>
+ </member>
+ <member name="M:Ice.LocatorRegistryOperations_.setReplicatedAdapterDirectProxy_async(Ice.AMD_LocatorRegistry_setReplicatedAdapterDirectProxy,System.String,System.String,Ice.ObjectPrx,Ice.Current)">
+ <summary>
+ Set the adapter endpoints with the locator registry.
+ </summary>
+ <param name="cb__">The callback object for the operation.</param>
+ <param name="adapterId">The adapter id.
+
+ </param>
+ <param name="replicaGroupId">The replica group id.
+
+ </param>
+ <param name="p">The adapter proxy (a dummy direct proxy created
+ by the adapter). The direct proxy contains the adapter
+ endpoints.
+
+ </param>
+ <param name="current__">The Current object for the invocation.</param>
+ </member>
+ <member name="M:Ice.LocatorRegistryOperations_.setServerProcessProxy_async(Ice.AMD_LocatorRegistry_setServerProcessProxy,System.String,Ice.ProcessPrx,Ice.Current)">
+ <summary>
+ Set the process proxy for a server.
+ </summary>
+ <param name="cb__">The callback object for the operation.</param>
+ <param name="id">The server id.
+
+ </param>
+ <param name="proxy">The process proxy.
+
+ </param>
+ <param name="current__">The Current object for the invocation.</param>
+ </member>
+ <member name="T:Ice.LocatorRegistryOperationsNC_">
+ <summary>
+ The Ice locator registry interface.
+ This interface is used by
+ servers to register adapter endpoints with the locator.
+
+ The LocatorRegistry interface is intended to be used
+ by Ice internals and by locator implementations. Regular user
+ code should not attempt to use any functionality of this interface
+ directly.
+ </summary>
+ </member>
+ <member name="M:Ice.LocatorRegistryOperationsNC_.setAdapterDirectProxy_async(Ice.AMD_LocatorRegistry_setAdapterDirectProxy,System.String,Ice.ObjectPrx)">
+ <summary>
+ Set the adapter endpoints with the locator registry.
+ </summary>
+ <param name="cb__">The callback object for the operation.</param>
+ <param name="id">The adapter id.
+
+ </param>
+ <param name="proxy">The adapter proxy (a dummy direct proxy created
+ by the adapter). The direct proxy contains the adapter
+ endpoints.
+
+ </param>
+ </member>
+ <member name="M:Ice.LocatorRegistryOperationsNC_.setReplicatedAdapterDirectProxy_async(Ice.AMD_LocatorRegistry_setReplicatedAdapterDirectProxy,System.String,System.String,Ice.ObjectPrx)">
+ <summary>
+ Set the adapter endpoints with the locator registry.
+ </summary>
+ <param name="cb__">The callback object for the operation.</param>
+ <param name="adapterId">The adapter id.
+
+ </param>
+ <param name="replicaGroupId">The replica group id.
+
+ </param>
+ <param name="p">The adapter proxy (a dummy direct proxy created
+ by the adapter). The direct proxy contains the adapter
+ endpoints.
+
+ </param>
+ </member>
+ <member name="M:Ice.LocatorRegistryOperationsNC_.setServerProcessProxy_async(Ice.AMD_LocatorRegistry_setServerProcessProxy,System.String,Ice.ProcessPrx)">
+ <summary>
+ Set the process proxy for a server.
+ </summary>
+ <param name="cb__">The callback object for the operation.</param>
+ <param name="id">The server id.
+
+ </param>
+ <param name="proxy">The process proxy.
+
+ </param>
+ </member>
+ <member name="T:Ice.LocatorPrxHelper">
+ <summary>
+ The Ice locator interface.
+ This interface is used by clients to
+ lookup adapters and objects. It is also used by servers to get the
+ locator registry proxy.
+
+ The Locator interface is intended to be used by
+ Ice internals and by locator implementations. Regular user code
+ should not attempt to use any functionality of this interface
+ directly.
+ </summary>
+ </member>
+ <member name="M:Ice.LocatorPrxHelper.findAdapterById(System.String)">
+ <summary>
+ Find an adapter by id and return its proxy (a dummy direct
+ proxy created by the adapter).
+ </summary>
+ <param name="id">The adapter id.
+
+ </param>
+ <returns>The adapter proxy, or null if the adapter is not active.
+
+ </returns>
+ <exception name="AdapterNotFoundException">Raised if the adapter cannot be
+ found.</exception>
+ </member>
+ <member name="M:Ice.LocatorPrxHelper.findAdapterById(System.String,System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Find an adapter by id and return its proxy (a dummy direct
+ proxy created by the adapter).
+ </summary>
+ <param name="id">The adapter id.
+
+ </param>
+ <returns>The adapter proxy, or null if the adapter is not active.
+
+ </returns>
+ <exception name="AdapterNotFoundException">Raised if the adapter cannot be
+ found.</exception>
+ <param name="context__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="M:Ice.LocatorPrxHelper.findObjectById(Ice.Identity)">
+ <summary>
+ Find an object by identity and return its proxy.
+ </summary>
+ <param name="id">The identity.
+
+ </param>
+ <returns>The proxy, or null if the object is not active.
+
+ </returns>
+ <exception name="ObjectNotFoundException">Raised if the object cannot
+ be found.</exception>
+ </member>
+ <member name="M:Ice.LocatorPrxHelper.findObjectById(Ice.Identity,System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Find an object by identity and return its proxy.
+ </summary>
+ <param name="id">The identity.
+
+ </param>
+ <returns>The proxy, or null if the object is not active.
+
+ </returns>
+ <exception name="ObjectNotFoundException">Raised if the object cannot
+ be found.</exception>
+ <param name="context__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="M:Ice.LocatorPrxHelper.getRegistry">
+ <summary>
+ Get the locator registry.
+ </summary>
+ <returns>The locator registry.</returns>
+ </member>
+ <member name="M:Ice.LocatorPrxHelper.getRegistry(System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Get the locator registry.
+ </summary>
+ <returns>The locator registry.</returns>
+ <param name="context__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="M:Ice.LocatorPrxHelper.begin_findAdapterById(System.String,System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Find an adapter by id and return its proxy (a dummy direct
+ proxy created by the adapter).
+ </summary>
+ <param name="id">The adapter id.
+
+ </param>
+ <param name="ctx__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="M:Ice.LocatorPrxHelper.findAdapterById_async(Ice.AMI_Locator_findAdapterById,System.String)">
+ <summary>
+ Find an adapter by id and return its proxy (a dummy direct
+ proxy created by the adapter).
+ </summary>
+ <param name="cb__">The callback object for the operation.</param>
+ <param name="id">The adapter id.
+
+ </param>
+ </member>
+ <member name="M:Ice.LocatorPrxHelper.findAdapterById_async(Ice.AMI_Locator_findAdapterById,System.String,System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Find an adapter by id and return its proxy (a dummy direct
+ proxy created by the adapter).
+ </summary>
+ <param name="cb__">The callback object for the operation.</param>
+ <param name="id">The adapter id.
+
+ </param>
+ <param name="ctx__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="M:Ice.LocatorPrxHelper.begin_findObjectById(Ice.Identity,System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Find an object by identity and return its proxy.
+ </summary>
+ <param name="id">The identity.
+
+ </param>
+ <param name="ctx__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="M:Ice.LocatorPrxHelper.findObjectById_async(Ice.AMI_Locator_findObjectById,Ice.Identity)">
+ <summary>
+ Find an object by identity and return its proxy.
+ </summary>
+ <param name="cb__">The callback object for the operation.</param>
+ <param name="id">The identity.
+
+ </param>
+ </member>
+ <member name="M:Ice.LocatorPrxHelper.findObjectById_async(Ice.AMI_Locator_findObjectById,Ice.Identity,System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Find an object by identity and return its proxy.
+ </summary>
+ <param name="cb__">The callback object for the operation.</param>
+ <param name="id">The identity.
+
+ </param>
+ <param name="ctx__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="M:Ice.LocatorPrxHelper.begin_getRegistry(System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Get the locator registry.
+ </summary>
+ <param name="ctx__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="T:Ice.LocatorRegistryPrxHelper">
+ <summary>
+ The Ice locator registry interface.
+ This interface is used by
+ servers to register adapter endpoints with the locator.
+
+ The LocatorRegistry interface is intended to be used
+ by Ice internals and by locator implementations. Regular user
+ code should not attempt to use any functionality of this interface
+ directly.
+ </summary>
+ </member>
+ <member name="M:Ice.LocatorRegistryPrxHelper.setAdapterDirectProxy(System.String,Ice.ObjectPrx)">
+ <summary>
+ Set the adapter endpoints with the locator registry.
+ </summary>
+ <param name="id">The adapter id.
+
+ </param>
+ <param name="proxy">The adapter proxy (a dummy direct proxy created
+ by the adapter). The direct proxy contains the adapter
+ endpoints.
+
+ </param>
+ <exception name="AdapterNotFoundException">Raised if the adapter cannot
+ be found, or if the locator only allows
+ registered adapters to set their active proxy and the
+ adapter is not registered with the locator.
+
+ </exception>
+ <exception name="AdapterAlreadyActiveException">Raised if an adapter with the same
+ id is already active.</exception>
+ </member>
+ <member name="M:Ice.LocatorRegistryPrxHelper.setAdapterDirectProxy(System.String,Ice.ObjectPrx,System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Set the adapter endpoints with the locator registry.
+ </summary>
+ <param name="id">The adapter id.
+
+ </param>
+ <param name="proxy">The adapter proxy (a dummy direct proxy created
+ by the adapter). The direct proxy contains the adapter
+ endpoints.
+
+ </param>
+ <exception name="AdapterNotFoundException">Raised if the adapter cannot
+ be found, or if the locator only allows
+ registered adapters to set their active proxy and the
+ adapter is not registered with the locator.
+
+ </exception>
+ <exception name="AdapterAlreadyActiveException">Raised if an adapter with the same
+ id is already active.</exception>
+ <param name="context__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="M:Ice.LocatorRegistryPrxHelper.setReplicatedAdapterDirectProxy(System.String,System.String,Ice.ObjectPrx)">
+ <summary>
+ Set the adapter endpoints with the locator registry.
+ </summary>
+ <param name="adapterId">The adapter id.
+
+ </param>
+ <param name="replicaGroupId">The replica group id.
+
+ </param>
+ <param name="p">The adapter proxy (a dummy direct proxy created
+ by the adapter). The direct proxy contains the adapter
+ endpoints.
+
+ </param>
+ <exception name="AdapterNotFoundException">Raised if the adapter cannot
+ be found, or if the locator only allows registered adapters to
+ set their active proxy and the adapter is not registered with
+ the locator.
+
+ </exception>
+ <exception name="AdapterAlreadyActiveException">Raised if an adapter with the same
+ id is already active.
+
+ </exception>
+ <exception name="InvalidReplicaGroupIdException">Raised if the given
+ replica group doesn't match the one registered with the
+ locator registry for this object adapter.</exception>
+ </member>
+ <member name="M:Ice.LocatorRegistryPrxHelper.setReplicatedAdapterDirectProxy(System.String,System.String,Ice.ObjectPrx,System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Set the adapter endpoints with the locator registry.
+ </summary>
+ <param name="adapterId">The adapter id.
+
+ </param>
+ <param name="replicaGroupId">The replica group id.
+
+ </param>
+ <param name="p">The adapter proxy (a dummy direct proxy created
+ by the adapter). The direct proxy contains the adapter
+ endpoints.
+
+ </param>
+ <exception name="AdapterNotFoundException">Raised if the adapter cannot
+ be found, or if the locator only allows registered adapters to
+ set their active proxy and the adapter is not registered with
+ the locator.
+
+ </exception>
+ <exception name="AdapterAlreadyActiveException">Raised if an adapter with the same
+ id is already active.
+
+ </exception>
+ <exception name="InvalidReplicaGroupIdException">Raised if the given
+ replica group doesn't match the one registered with the
+ locator registry for this object adapter.</exception>
+ <param name="context__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="M:Ice.LocatorRegistryPrxHelper.setServerProcessProxy(System.String,Ice.ProcessPrx)">
+ <summary>
+ Set the process proxy for a server.
+ </summary>
+ <param name="id">The server id.
+
+ </param>
+ <param name="proxy">The process proxy.
+
+ </param>
+ <exception name="ServerNotFoundException">Raised if the server cannot
+ be found.</exception>
+ </member>
+ <member name="M:Ice.LocatorRegistryPrxHelper.setServerProcessProxy(System.String,Ice.ProcessPrx,System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Set the process proxy for a server.
+ </summary>
+ <param name="id">The server id.
+
+ </param>
+ <param name="proxy">The process proxy.
+
+ </param>
+ <exception name="ServerNotFoundException">Raised if the server cannot
+ be found.</exception>
+ <param name="context__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="M:Ice.LocatorRegistryPrxHelper.begin_setAdapterDirectProxy(System.String,Ice.ObjectPrx,System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Set the adapter endpoints with the locator registry.
+ </summary>
+ <param name="id">The adapter id.
+
+ </param>
+ <param name="proxy">The adapter proxy (a dummy direct proxy created
+ by the adapter). The direct proxy contains the adapter
+ endpoints.
+
+ </param>
+ <param name="ctx__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="M:Ice.LocatorRegistryPrxHelper.setAdapterDirectProxy_async(Ice.AMI_LocatorRegistry_setAdapterDirectProxy,System.String,Ice.ObjectPrx)">
+ <summary>
+ Set the adapter endpoints with the locator registry.
+ </summary>
+ <param name="cb__">The callback object for the operation.</param>
+ <param name="id">The adapter id.
+
+ </param>
+ <param name="proxy">The adapter proxy (a dummy direct proxy created
+ by the adapter). The direct proxy contains the adapter
+ endpoints.
+
+ </param>
+ </member>
+ <member name="M:Ice.LocatorRegistryPrxHelper.setAdapterDirectProxy_async(Ice.AMI_LocatorRegistry_setAdapterDirectProxy,System.String,Ice.ObjectPrx,System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Set the adapter endpoints with the locator registry.
+ </summary>
+ <param name="cb__">The callback object for the operation.</param>
+ <param name="id">The adapter id.
+
+ </param>
+ <param name="proxy">The adapter proxy (a dummy direct proxy created
+ by the adapter). The direct proxy contains the adapter
+ endpoints.
+
+ </param>
+ <param name="ctx__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="M:Ice.LocatorRegistryPrxHelper.begin_setReplicatedAdapterDirectProxy(System.String,System.String,Ice.ObjectPrx,System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Set the adapter endpoints with the locator registry.
+ </summary>
+ <param name="adapterId">The adapter id.
+
+ </param>
+ <param name="replicaGroupId">The replica group id.
+
+ </param>
+ <param name="p">The adapter proxy (a dummy direct proxy created
+ by the adapter). The direct proxy contains the adapter
+ endpoints.
+
+ </param>
+ <param name="ctx__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="M:Ice.LocatorRegistryPrxHelper.setReplicatedAdapterDirectProxy_async(Ice.AMI_LocatorRegistry_setReplicatedAdapterDirectProxy,System.String,System.String,Ice.ObjectPrx)">
+ <summary>
+ Set the adapter endpoints with the locator registry.
+ </summary>
+ <param name="cb__">The callback object for the operation.</param>
+ <param name="adapterId">The adapter id.
+
+ </param>
+ <param name="replicaGroupId">The replica group id.
+
+ </param>
+ <param name="p">The adapter proxy (a dummy direct proxy created
+ by the adapter). The direct proxy contains the adapter
+ endpoints.
+
+ </param>
+ </member>
+ <member name="M:Ice.LocatorRegistryPrxHelper.setReplicatedAdapterDirectProxy_async(Ice.AMI_LocatorRegistry_setReplicatedAdapterDirectProxy,System.String,System.String,Ice.ObjectPrx,System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Set the adapter endpoints with the locator registry.
+ </summary>
+ <param name="cb__">The callback object for the operation.</param>
+ <param name="adapterId">The adapter id.
+
+ </param>
+ <param name="replicaGroupId">The replica group id.
+
+ </param>
+ <param name="p">The adapter proxy (a dummy direct proxy created
+ by the adapter). The direct proxy contains the adapter
+ endpoints.
+
+ </param>
+ <param name="ctx__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="M:Ice.LocatorRegistryPrxHelper.begin_setServerProcessProxy(System.String,Ice.ProcessPrx,System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Set the process proxy for a server.
+ </summary>
+ <param name="id">The server id.
+
+ </param>
+ <param name="proxy">The process proxy.
+
+ </param>
+ <param name="ctx__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="T:Ice.AMD_Locator_findObjectById">
+ <summary>
+ Find an object by identity and return its proxy.
+ </summary>
+ </member>
+ <member name="M:Ice.AMD_Locator_findObjectById.ice_response(Ice.ObjectPrx)">
+ <summary>
+ ice_response indicates that
+ the operation completed successfully.
+ </summary>
+ <param name="ret__">(return value) The proxy, or null if the object is not active.
+
+ </param>
+ </member>
+ <member name="T:Ice.AMD_Locator_findAdapterById">
+ <summary>
+ Find an adapter by id and return its proxy (a dummy direct
+ proxy created by the adapter).
+ </summary>
+ </member>
+ <member name="M:Ice.AMD_Locator_findAdapterById.ice_response(Ice.ObjectPrx)">
+ <summary>
+ ice_response indicates that
+ the operation completed successfully.
+ </summary>
+ <param name="ret__">(return value) The adapter proxy, or null if the adapter is not active.
+
+ </param>
+ </member>
+ <member name="T:Ice.AMI_LocatorRegistry_setAdapterDirectProxy">
+ <summary>
+ Set the adapter endpoints with the locator registry.
+ </summary>
+ </member>
+ <member name="M:Ice.AMI_LocatorRegistry_setAdapterDirectProxy.ice_response">
+ <summary>
+ ice_response indicates that
+ the operation completed successfully.
+ </summary>
+ </member>
+ <member name="T:Ice.AMD_LocatorRegistry_setAdapterDirectProxy">
+ <summary>
+ Set the adapter endpoints with the locator registry.
+ </summary>
+ </member>
+ <member name="M:Ice.AMD_LocatorRegistry_setAdapterDirectProxy.ice_response">
+ <summary>
+ ice_response indicates that
+ the operation completed successfully.
+ </summary>
+ </member>
+ <member name="T:Ice.AMI_LocatorRegistry_setReplicatedAdapterDirectProxy">
+ <summary>
+ Set the adapter endpoints with the locator registry.
+ </summary>
+ </member>
+ <member name="M:Ice.AMI_LocatorRegistry_setReplicatedAdapterDirectProxy.ice_response">
+ <summary>
+ ice_response indicates that
+ the operation completed successfully.
+ </summary>
+ </member>
+ <member name="T:Ice.AMD_LocatorRegistry_setReplicatedAdapterDirectProxy">
+ <summary>
+ Set the adapter endpoints with the locator registry.
+ </summary>
+ </member>
+ <member name="M:Ice.AMD_LocatorRegistry_setReplicatedAdapterDirectProxy.ice_response">
+ <summary>
+ ice_response indicates that
+ the operation completed successfully.
+ </summary>
+ </member>
+ <member name="T:Ice.AMD_LocatorRegistry_setServerProcessProxy">
+ <summary>
+ Set the process proxy for a server.
+ </summary>
+ </member>
+ <member name="M:Ice.AMD_LocatorRegistry_setServerProcessProxy.ice_response">
+ <summary>
+ ice_response indicates that
+ the operation completed successfully.
+ </summary>
+ </member>
+ <member name="M:Ice.PluginManager.initializePlugins">
+ <summary>
+ Initialize the configured plug-ins.
+ The communicator automatically initializes
+ the plug-ins by default, but an application may need to interact directly with
+ a plug-in prior to initialization. In this case, the application must set
+ Ice.InitPlugins=0 and then invoke initializePlugins
+ manually. The plug-ins are initialized in the order in which they are loaded.
+ If a plug-in raises an exception during initialization, the communicator
+ invokes destroy on the plug-ins that have already been initialized.
+
+ </summary>
+ <exception name="InitializationException">Raised if the plug-ins have already been initialized.</exception>
+ </member>
+ <member name="M:Ice.PluginManager.getPlugins">
+ <summary>
+ Get a list of plugins installed.
+ </summary>
+ <returns>The names of the plugins installed.
+
+ </returns>
+ </member>
+ <member name="M:Ice.PluginManager.getPlugin(System.String)">
+ <summary>
+ Obtain a plug-in by name.
+ </summary>
+ <param name="name">The plug-in's name.
+
+ </param>
+ <returns>The plug-in.
+
+ </returns>
+ <exception name="NotRegisteredException">Raised if no plug-in is found with the given name.</exception>
+ </member>
+ <member name="M:Ice.PluginManager.addPlugin(System.String,Ice.Plugin)">
+ <summary>
+ Install a new plug-in.
+ </summary>
+ <param name="name">The plug-in's name.
+
+ </param>
+ <param name="pi">The plug-in.
+
+ </param>
+ <exception name="AlreadyRegisteredException">Raised if a plug-in already exists with the given name.</exception>
+ </member>
+ <member name="M:Ice.PluginManager.destroy">
+ <summary>
+ Called when the communicator is being destroyed.
+ </summary>
+ </member>
+ <member name="T:Ice.ProcessPrxHelper">
+ <summary>
+ An administrative interface for process management.
+ Managed servers must
+ implement this interface.
+
+ A servant implementing this interface is a potential target
+ for denial-of-service attacks, therefore proper security precautions
+ should be taken. For example, the servant can use a UUID to make its
+ identity harder to guess, and be registered in an object adapter with
+ a secured endpoint.
+ </summary>
+ </member>
+ <member name="M:Ice.ProcessPrxHelper.shutdown">
+ <summary>
+ Initiate a graceful shut-down.
+ </summary>
+ </member>
+ <member name="M:Ice.ProcessPrxHelper.shutdown(System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Initiate a graceful shut-down.
+ </summary>
+ <param name="context__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="M:Ice.ProcessPrxHelper.writeMessage(System.String,System.Int32)">
+ <summary>
+ Write a message on the process' stdout or stderr.
+ </summary>
+ <param name="message">The message.
+
+ </param>
+ <param name="fd">1 for stdout, 2 for stderr.</param>
+ </member>
+ <member name="M:Ice.ProcessPrxHelper.writeMessage(System.String,System.Int32,System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Write a message on the process' stdout or stderr.
+ </summary>
+ <param name="message">The message.
+
+ </param>
+ <param name="fd">1 for stdout, 2 for stderr.</param>
+ <param name="context__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="M:Ice.ProcessPrxHelper.begin_shutdown(System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Initiate a graceful shut-down.
+ </summary>
+ <param name="ctx__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="M:Ice.ProcessPrxHelper.shutdown_async(Ice.AMI_Process_shutdown)">
+ <summary>
+ Initiate a graceful shut-down.
+ </summary>
+ <param name="cb__">The callback object for the operation.</param>
+ </member>
+ <member name="M:Ice.ProcessPrxHelper.shutdown_async(Ice.AMI_Process_shutdown,System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Initiate a graceful shut-down.
+ </summary>
+ <param name="cb__">The callback object for the operation.</param>
+ <param name="ctx__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="M:Ice.ProcessPrxHelper.begin_writeMessage(System.String,System.Int32,System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Write a message on the process' stdout or stderr.
+ </summary>
+ <param name="message">The message.
+
+ </param>
+ <param name="fd">1 for stdout, 2 for stderr.</param>
+ <param name="ctx__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="M:Ice.ProcessPrxHelper.writeMessage_async(Ice.AMI_Process_writeMessage,System.String,System.Int32)">
+ <summary>
+ Write a message on the process' stdout or stderr.
+ </summary>
+ <param name="cb__">The callback object for the operation.</param>
+ <param name="message">The message.
+
+ </param>
+ <param name="fd">1 for stdout, 2 for stderr.</param>
+ </member>
+ <member name="M:Ice.ProcessPrxHelper.writeMessage_async(Ice.AMI_Process_writeMessage,System.String,System.Int32,System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Write a message on the process' stdout or stderr.
+ </summary>
+ <param name="cb__">The callback object for the operation.</param>
+ <param name="message">The message.
+
+ </param>
+ <param name="fd">1 for stdout, 2 for stderr.</param>
+ <param name="ctx__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="T:Ice.AMI_Process_shutdown">
+ <summary>
+ Initiate a graceful shut-down.
+ </summary>
+ </member>
+ <member name="M:Ice.AMI_Process_shutdown.ice_response">
+ <summary>
+ ice_response indicates that
+ the operation completed successfully.
+ </summary>
+ </member>
+ <member name="T:Ice.AMI_Process_writeMessage">
+ <summary>
+ Write a message on the process' stdout or stderr.
+ </summary>
+ </member>
+ <member name="M:Ice.AMI_Process_writeMessage.ice_response">
+ <summary>
+ ice_response indicates that
+ the operation completed successfully.
+ </summary>
+ </member>
+ <member name="T:Ice.PropertiesAdminPrxHelper">
+ <summary>
+ The PropertiesAdmin interface provides remote access to the properties
+ of a communicator.
+ </summary>
+ </member>
+ <member name="M:Ice.PropertiesAdminPrxHelper.getPropertiesForPrefix(System.String)">
+ <summary>
+ Get all properties whose keys begins with
+ prefix.
+ If
+ prefix is an empty string,
+ then all properties are returned.
+
+ </summary>
+ <param name="prefix">The prefix to search for (empty string if none).
+ </param>
+ <returns>The matching property set.</returns>
+ </member>
+ <member name="M:Ice.PropertiesAdminPrxHelper.getPropertiesForPrefix(System.String,System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Get all properties whose keys begins with
+ prefix.
+ If
+ prefix is an empty string,
+ then all properties are returned.
+
+ </summary>
+ <param name="prefix">The prefix to search for (empty string if none).
+ </param>
+ <returns>The matching property set.</returns>
+ <param name="context__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="M:Ice.PropertiesAdminPrxHelper.getProperty(System.String)">
+ <summary>
+ Get a property by key.
+ If the property is not set, an empty
+ string is returned.
+
+ </summary>
+ <param name="key">The property key.
+
+ </param>
+ <returns>The property value.</returns>
+ </member>
+ <member name="M:Ice.PropertiesAdminPrxHelper.getProperty(System.String,System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Get a property by key.
+ If the property is not set, an empty
+ string is returned.
+
+ </summary>
+ <param name="key">The property key.
+
+ </param>
+ <returns>The property value.</returns>
+ <param name="context__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="M:Ice.PropertiesAdminPrxHelper.begin_getPropertiesForPrefix(System.String,System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Get all properties whose keys begins with
+ prefix.
+ If
+ </summary>
+ <param name="prefix">The prefix to search for (empty string if none).
+ </param>
+ <param name="ctx__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="M:Ice.PropertiesAdminPrxHelper.getPropertiesForPrefix_async(Ice.AMI_PropertiesAdmin_getPropertiesForPrefix,System.String)">
+ <summary>
+ Get all properties whose keys begins with
+ prefix.
+ If
+ </summary>
+ <param name="cb__">The callback object for the operation.</param>
+ <param name="prefix">The prefix to search for (empty string if none).
+ </param>
+ </member>
+ <member name="M:Ice.PropertiesAdminPrxHelper.getPropertiesForPrefix_async(Ice.AMI_PropertiesAdmin_getPropertiesForPrefix,System.String,System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Get all properties whose keys begins with
+ prefix.
+ If
+ </summary>
+ <param name="cb__">The callback object for the operation.</param>
+ <param name="prefix">The prefix to search for (empty string if none).
+ </param>
+ <param name="ctx__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="M:Ice.PropertiesAdminPrxHelper.begin_getProperty(System.String,System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Get a property by key.
+ If the property is not set, an empty
+ </summary>
+ <param name="key">The property key.
+
+ </param>
+ <param name="ctx__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="M:Ice.PropertiesAdminPrxHelper.getProperty_async(Ice.AMI_PropertiesAdmin_getProperty,System.String)">
+ <summary>
+ Get a property by key.
+ If the property is not set, an empty
+ </summary>
+ <param name="cb__">The callback object for the operation.</param>
+ <param name="key">The property key.
+
+ </param>
+ </member>
+ <member name="M:Ice.PropertiesAdminPrxHelper.getProperty_async(Ice.AMI_PropertiesAdmin_getProperty,System.String,System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Get a property by key.
+ If the property is not set, an empty
+ </summary>
+ <param name="cb__">The callback object for the operation.</param>
+ <param name="key">The property key.
+
+ </param>
+ <param name="ctx__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="T:Ice.AMI_PropertiesAdmin_getProperty">
+ <summary>
+ Get a property by key.
+ If the property is not set, an empty
+ string is returned.
+
+ </summary>
+ </member>
+ <member name="M:Ice.AMI_PropertiesAdmin_getProperty.ice_response(System.String)">
+ <summary>
+ ice_response indicates that
+ the operation completed successfully.
+ </summary>
+ <param name="ret__">(return value) The property value.</param>
+ </member>
+ <member name="T:Ice.AMI_PropertiesAdmin_getPropertiesForPrefix">
+ <summary>
+ Get all properties whose keys begins with
+ prefix.
+ If
+ prefix is an empty string,
+ then all properties are returned.
+
+ </summary>
+ </member>
+ <member name="M:Ice.AMI_PropertiesAdmin_getPropertiesForPrefix.ice_response(System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ ice_response indicates that
+ the operation completed successfully.
+ </summary>
+ <param name="ret__">(return value) The matching property set.</param>
+ </member>
+ <member name="T:Ice.RouterOperations_">
+ <summary>
+ The Ice router interface.
+ Routers can be set either globally with
+ Communicator.setDefaultRouter, or with ice_router on specific
+ proxies.
+ </summary>
+ </member>
+ <member name="M:Ice.RouterOperations_.getClientProxy(Ice.Current)">
+ <summary>
+ Get the router's client proxy, i.e., the proxy to use for
+ forwarding requests from the client to the router.
+ </summary>
+ <returns>The router's client proxy.</returns>
+ <param name="current__">The Current object for the invocation.</param>
+ </member>
+ <member name="M:Ice.RouterOperations_.getServerProxy(Ice.Current)">
+ <summary>
+ Get the router's server proxy, i.e., the proxy to use for
+ forwarding requests from the server to the router.
+ </summary>
+ <returns>The router's server proxy.</returns>
+ <param name="current__">The Current object for the invocation.</param>
+ </member>
+ <member name="M:Ice.RouterOperations_.addProxy(Ice.ObjectPrx,Ice.Current)">
+ <summary>
+ Add new proxy information to the router's routing table.
+
+ <para>addProxy() is deprecated, use addProxies() instead.</para>
+
+ This operation is deprecated, and only used for old
+ Ice clients (older than version 3.1).
+
+ </summary>
+ <param name="proxy">The proxy to add.</param>
+ <param name="current__">The Current object for the invocation.</param>
+ </member>
+ <member name="M:Ice.RouterOperations_.addProxies(Ice.ObjectPrx[],Ice.Current)">
+ <summary>
+ Add new proxy information to the router's routing table.
+ </summary>
+ <param name="proxies">The proxies to add.
+
+ </param>
+ <returns>Proxies discarded by the router.</returns>
+ <param name="current__">The Current object for the invocation.</param>
+ </member>
+ <member name="T:Ice.RouterOperationsNC_">
+ <summary>
+ The Ice router interface.
+ Routers can be set either globally with
+ Communicator.setDefaultRouter, or with ice_router on specific
+ proxies.
+ </summary>
+ </member>
+ <member name="M:Ice.RouterOperationsNC_.getClientProxy">
+ <summary>
+ Get the router's client proxy, i.e., the proxy to use for
+ forwarding requests from the client to the router.
+ </summary>
+ <returns>The router's client proxy.</returns>
+ </member>
+ <member name="M:Ice.RouterOperationsNC_.getServerProxy">
+ <summary>
+ Get the router's server proxy, i.e., the proxy to use for
+ forwarding requests from the server to the router.
+ </summary>
+ <returns>The router's server proxy.</returns>
+ </member>
+ <member name="M:Ice.RouterOperationsNC_.addProxy(Ice.ObjectPrx)">
+ <summary>
+ Add new proxy information to the router's routing table.
+
+ <para>addProxy() is deprecated, use addProxies() instead.</para>
+
+ This operation is deprecated, and only used for old
+ Ice clients (older than version 3.1).
+
+ </summary>
+ <param name="proxy">The proxy to add.</param>
+ </member>
+ <member name="M:Ice.RouterOperationsNC_.addProxies(Ice.ObjectPrx[])">
+ <summary>
+ Add new proxy information to the router's routing table.
+ </summary>
+ <param name="proxies">The proxies to add.
+
+ </param>
+ <returns>Proxies discarded by the router.</returns>
+ </member>
+ <member name="T:Ice.RouterPrxHelper">
+ <summary>
+ The Ice router interface.
+ Routers can be set either globally with
+ Communicator.setDefaultRouter, or with ice_router on specific
+ proxies.
+ </summary>
+ </member>
+ <member name="M:Ice.RouterPrxHelper.addProxies(Ice.ObjectPrx[])">
+ <summary>
+ Add new proxy information to the router's routing table.
+ </summary>
+ <param name="proxies">The proxies to add.
+
+ </param>
+ <returns>Proxies discarded by the router.</returns>
+ </member>
+ <member name="M:Ice.RouterPrxHelper.addProxies(Ice.ObjectPrx[],System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Add new proxy information to the router's routing table.
+ </summary>
+ <param name="proxies">The proxies to add.
+
+ </param>
+ <returns>Proxies discarded by the router.</returns>
+ <param name="context__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="M:Ice.RouterPrxHelper.addProxy(Ice.ObjectPrx)">
+ <summary>
+ Add new proxy information to the router's routing table.
+
+ <para>addProxy() is deprecated, use addProxies() instead.</para>
+
+ This operation is deprecated, and only used for old
+ Ice clients (older than version 3.1).
+
+ </summary>
+ <param name="proxy">The proxy to add.</param>
+ </member>
+ <member name="M:Ice.RouterPrxHelper.addProxy(Ice.ObjectPrx,System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Add new proxy information to the router's routing table.
+
+ <para>addProxy() is deprecated, use addProxies() instead.</para>
+
+ This operation is deprecated, and only used for old
+ Ice clients (older than version 3.1).
+
+ </summary>
+ <param name="proxy">The proxy to add.</param>
+ <param name="context__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="M:Ice.RouterPrxHelper.getClientProxy">
+ <summary>
+ Get the router's client proxy, i.e., the proxy to use for
+ forwarding requests from the client to the router.
+ </summary>
+ <returns>The router's client proxy.</returns>
+ </member>
+ <member name="M:Ice.RouterPrxHelper.getClientProxy(System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Get the router's client proxy, i.e., the proxy to use for
+ forwarding requests from the client to the router.
+ </summary>
+ <returns>The router's client proxy.</returns>
+ <param name="context__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="M:Ice.RouterPrxHelper.getServerProxy">
+ <summary>
+ Get the router's server proxy, i.e., the proxy to use for
+ forwarding requests from the server to the router.
+ </summary>
+ <returns>The router's server proxy.</returns>
+ </member>
+ <member name="M:Ice.RouterPrxHelper.getServerProxy(System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Get the router's server proxy, i.e., the proxy to use for
+ forwarding requests from the server to the router.
+ </summary>
+ <returns>The router's server proxy.</returns>
+ <param name="context__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="M:Ice.RouterPrxHelper.begin_addProxies(Ice.ObjectPrx[],System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Add new proxy information to the router's routing table.
+ </summary>
+ <param name="proxies">The proxies to add.
+
+ </param>
+ <param name="ctx__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="M:Ice.RouterPrxHelper.addProxies_async(Ice.AMI_Router_addProxies,Ice.ObjectPrx[])">
+ <summary>
+ Add new proxy information to the router's routing table.
+ </summary>
+ <param name="cb__">The callback object for the operation.</param>
+ <param name="proxies">The proxies to add.
+
+ </param>
+ </member>
+ <member name="M:Ice.RouterPrxHelper.addProxies_async(Ice.AMI_Router_addProxies,Ice.ObjectPrx[],System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Add new proxy information to the router's routing table.
+ </summary>
+ <param name="cb__">The callback object for the operation.</param>
+ <param name="proxies">The proxies to add.
+
+ </param>
+ <param name="ctx__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="M:Ice.RouterPrxHelper.begin_addProxy(Ice.ObjectPrx,System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Add new proxy information to the router's routing table.
+ This operation is deprecated, and only used for old
+ </summary>
+ <param name="proxy">The proxy to add.</param>
+ <param name="ctx__">The Context map to send with the invocation.</param>
+ <para>addProxy() is deprecated, use addProxies() instead.</para>
+ </member>
+ <member name="M:Ice.RouterPrxHelper.begin_getClientProxy(System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Get the router's client proxy, i.e., the proxy to use for
+ forwarding requests from the client to the router.
+ </summary>
+ <param name="ctx__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="M:Ice.RouterPrxHelper.getClientProxy_async(Ice.AMI_Router_getClientProxy)">
+ <summary>
+ Get the router's client proxy, i.e., the proxy to use for
+ forwarding requests from the client to the router.
+ </summary>
+ <param name="cb__">The callback object for the operation.</param>
+ </member>
+ <member name="M:Ice.RouterPrxHelper.getClientProxy_async(Ice.AMI_Router_getClientProxy,System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Get the router's client proxy, i.e., the proxy to use for
+ forwarding requests from the client to the router.
+ </summary>
+ <param name="cb__">The callback object for the operation.</param>
+ <param name="ctx__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="M:Ice.RouterPrxHelper.begin_getServerProxy(System.Collections.Generic.Dictionary{System.String,System.String})">
+ <summary>
+ Get the router's server proxy, i.e., the proxy to use for
+ forwarding requests from the server to the router.
+ </summary>
+ <param name="ctx__">The Context map to send with the invocation.</param>
+ </member>
+ <member name="M:Ice.ServantLocator.locate(Ice.Current,System.Object@)">
+ <summary>
+ Called before a request is dispatched if a
+ servant cannot be found in the object adapter's active servant
+ map.
+ Note that the object adapter does not automatically insert
+ the returned servant into its active servant map. This must be
+ done by the servant locator implementation, if this is desired.
+
+ locate can throw any user exception. If it does, that exception
+ is marshaled back to the client. If the Slice definition for the
+ corresponding operation includes that user exception, the client
+ receives that user exception; otherwise, the client receives
+ UnknownUserException.
+
+ If locate throws any exception, the Ice run time does not
+ call finished.
+
+ If you call locate from your own code, you
+ must also call finished when you have finished using the
+ servant, provided that locate returned a non-null servant;
+ otherwise, you will get undefined behavior if you use
+ servant locators such as the Freeze.Evictor.
+
+ </summary>
+ <param name="curr">Information about the current operation for which
+ a servant is required.
+
+ </param>
+ <param name="cookie">A "cookie" that will be passed to finished.
+
+ </param>
+ <returns>The located servant, or null if no suitable servant has
+ been found.
+
+ </returns>
+ </member>
+ <member name="M:Ice.ServantLocator.finished(Ice.Current,Ice.Object,System.Object)">
+ <summary>
+ Called by the object adapter after a request has been
+ made.
+ This operation is only called if locate was called
+ prior to the request and returned a non-null servant. This
+ operation can be used for cleanup purposes after a request.
+
+ finished can throw any user exception. If it does, that exception
+ is marshaled back to the client. If the Slice definition for the
+ corresponding operation includes that user exception, the client
+ receives that user exception; otherwise, the client receives
+ UnknownUserException.
+
+ If both the operation and finished throw an exception, the
+ exception thrown by finished is marshaled back to the client.
+
+ </summary>
+ <param name="curr">Information about the current operation call for
+ which a servant was located by locate.
+
+ </param>
+ <param name="servant">The servant that was returned by locate.
+
+ </param>
+ <param name="cookie">The cookie that was returned by locate.
+
+ </param>
+ </member>
+ <member name="M:Ice.ServantLocator.deactivate(System.String)">
+ <summary>
+ Called when the object adapter in which this servant locator is
+ installed is deactivated.
+ </summary>
+ <param name="category">Indicates for which category the servant locator
+ is being deactivated.
+
+ </param>
+ </member>
+ <member name="M:Ice.Stats.bytesSent(System.String,System.Int32)">
+ <summary>
+ Callback to report that data has been sent.
+ </summary>
+ <param name="protocol">The protocol over which data has been sent (for
+ example "tcp", "udp", or "ssl").
+
+ </param>
+ <param name="num">How many bytes have been sent.</param>
+ </member>
+ <member name="M:Ice.Stats.bytesReceived(System.String,System.Int32)">
+ <summary>
+ Callback to report that data has been received.
+ </summary>
+ <param name="protocol">The protocol over which data has been received
+ (for example "tcp", "udp", or "ssl").
+
+ </param>
+ <param name="num">How many bytes have been received.</param>
+ </member>
+ </members>
+</doc>
diff --git a/cs/demo/Glacier2/sl/chat/bin/System.Windows.Controls.Navigation.xml b/cs/demo/Glacier2/sl/chat/bin/System.Windows.Controls.Navigation.xml
new file mode 100644
index 00000000000..40e0c570d25
--- /dev/null
+++ b/cs/demo/Glacier2/sl/chat/bin/System.Windows.Controls.Navigation.xml
@@ -0,0 +1,420 @@
+<?xml version="1.0" encoding="utf-8"?>
+<doc>
+ <assembly>
+ <name>System.Windows.Controls.Navigation</name>
+ </assembly>
+ <members>
+ <member name="T:System.Windows.Automation.Peers.FrameAutomationPeer">
+ <summary>Exposes <see cref="T:System.Windows.Controls.Frame" /> types to UI automation.</summary>
+ </member>
+ <member name="M:System.Windows.Automation.Peers.FrameAutomationPeer.#ctor(System.Windows.Controls.Frame)">
+ <summary>Initializes a new instance of the <see cref="T:System.Windows.Automation.Peers.FrameAutomationPeer" /> class. </summary>
+ <param name="owner">The <see cref="T:System.Windows.Controls.Frame" /> to associate with this <see cref="T:System.Windows.Automation.Peers.FrameAutomationPeer" />.</param>
+ </member>
+ <member name="M:System.Windows.Automation.Peers.FrameAutomationPeer.GetAutomationControlTypeCore">
+ <summary>Gets the <see cref="T:System.Windows.Automation.Peers.AutomationControlType" /> for the element associated with this <see cref="T:System.Windows.Automation.Peers.FrameAutomationPeer" />. Called by <see cref="M:System.Windows.Automation.Peers.AutomationPeer.GetAutomationControlType" />.</summary>
+ <returns>A value of the enumeration.</returns>
+ </member>
+ <member name="M:System.Windows.Automation.Peers.FrameAutomationPeer.GetClassNameCore">
+ <summary>Gets the name of the class associated with this <see cref="T:System.Windows.Automation.Peers.FrameAutomationPeer" />. Called by <see cref="M:System.Windows.Automation.Peers.AutomationPeer.GetClassName" />.</summary>
+ <returns>The class name.</returns>
+ </member>
+ <member name="M:System.Windows.Automation.Peers.FrameAutomationPeer.GetNameCore">
+ <summary>Gets the UI Automation Name of the element that is associated with this <see cref="T:System.Windows.Automation.Peers.FrameAutomationPeer" />. Called by <see cref="M:System.Windows.Automation.Peers.AutomationPeer.GetName" />.</summary>
+ <returns>The UI Automation Nameof the element that is associated with this automation peer.</returns>
+ </member>
+ <member name="T:System.Windows.Controls.Frame">
+ <summary>Represents a control that supports navigation to and from Silverlight pages.</summary>
+ </member>
+ <member name="M:System.Windows.Controls.Frame.#ctor">
+ <summary>Initializes a new instance of the <see cref="T:System.Windows.Controls.Frame" /> class. </summary>
+ </member>
+ <member name="P:System.Windows.Controls.Frame.CacheSize">
+ <summary>Gets or sets the number of pages that can be cached for the frame.</summary>
+ <returns>The number of pages that can be cached for the frame. The default value is 10.</returns>
+ </member>
+ <member name="F:System.Windows.Controls.Frame.CacheSizeProperty">
+ <summary>Identifies the <see cref="P:System.Windows.Controls.Frame.CacheSize" /> dependency property.</summary>
+ <returns>The identifier for the <see cref="P:System.Windows.Controls.Frame.CacheSize" /> dependency property.</returns>
+ </member>
+ <member name="P:System.Windows.Controls.Frame.CanGoBack">
+ <summary>Gets a value that indicates whether there is at least one entry in the back navigation history.</summary>
+ <returns>true if there is at least one entry in the back navigation history; otherwise, false.</returns>
+ </member>
+ <member name="F:System.Windows.Controls.Frame.CanGoBackProperty">
+ <summary>Identifies the <see cref="P:System.Windows.Controls.Frame.CanGoBack" /> dependency property.</summary>
+ <returns>The identifier for the <see cref="P:System.Windows.Controls.Frame.CanGoBack" /> dependency property.</returns>
+ </member>
+ <member name="P:System.Windows.Controls.Frame.CanGoForward">
+ <summary>Gets a value that indicates whether there is at least one entry in the forward navigation history.</summary>
+ <returns>true if there is at least one entry in the forward navigation history; otherwise, false.</returns>
+ </member>
+ <member name="F:System.Windows.Controls.Frame.CanGoForwardProperty">
+ <summary>Identifies the <see cref="P:System.Windows.Controls.Frame.CanGoForward" /> dependency property.</summary>
+ <returns>The identifier for the <see cref="P:System.Windows.Controls.Frame.CanGoForward" /> dependency property.</returns>
+ </member>
+ <member name="P:System.Windows.Controls.Frame.ContentLoader">
+ <summary>Gets or sets the object responsible for providing the content that corresponds to a requested URI. </summary>
+ <returns>The object responsible for providing the content that corresponds to a requested URI. The default is a <see cref="T:System.Windows.Navigation.PageResourceContentLoader" /> instance.</returns>
+ </member>
+ <member name="F:System.Windows.Controls.Frame.ContentLoaderProperty">
+ <summary>Identifies the <see cref="P:System.Windows.Controls.Frame.ContentLoader" /> dependency property.</summary>
+ <returns>The identifier for the <see cref="P:System.Windows.Controls.Frame.ContentLoader" /> dependency property.</returns>
+ </member>
+ <member name="P:System.Windows.Controls.Frame.CurrentSource">
+ <summary>Gets the uniform resource identifier (URI) of the content that is currently displayed.</summary>
+ <returns>A value that represents the URI of content that is currently displayed.</returns>
+ </member>
+ <member name="F:System.Windows.Controls.Frame.CurrentSourceProperty">
+ <summary>Identifies the <see cref="P:System.Windows.Controls.Frame.CurrentSource" /> dependency property.</summary>
+ <returns>The identifier for the <see cref="P:System.Windows.Controls.Frame.CurrentSource" /> dependency property.</returns>
+ </member>
+ <member name="E:System.Windows.Controls.Frame.FragmentNavigation">
+ <summary>Occurs when navigation to a content fragment begins.</summary>
+ </member>
+ <member name="M:System.Windows.Controls.Frame.GoBack">
+ <summary>Navigates to the most recent entry in the back navigation history, or throws an exception if no entry exists in back navigation.</summary>
+ <exception cref="T:System.InvalidOperationException">There are no entries in the back navigation history.</exception>
+ </member>
+ <member name="M:System.Windows.Controls.Frame.GoForward">
+ <summary>Navigates to the most recent entry in the forward navigation history, or throws an exception if no entry exists in forward navigation.</summary>
+ <exception cref="T:System.InvalidOperationException">There are no entries in the forward navigation history.</exception>
+ </member>
+ <member name="P:System.Windows.Controls.Frame.JournalOwnership">
+ <summary>Gets or sets whether a frame is responsible for managing its own navigation history, or whether it integrates with the Web browser journal.</summary>
+ <returns>A value that specifies whether frame manages its own journal. The default value is <see cref="F:System.Windows.Navigation.JournalOwnership.Automatic" />.</returns>
+ <exception cref="T:System.InvalidOperationException">A nested frame or more than one frame attempts to integrate with browser journal.</exception>
+ </member>
+ <member name="F:System.Windows.Controls.Frame.JournalOwnershipProperty">
+ <summary>Identifies the <see cref="P:System.Windows.Controls.Frame.JournalOwnership" /> dependency property.</summary>
+ <returns>The identifier for the <see cref="P:System.Windows.Controls.Frame.JournalOwnership" /> dependency property.</returns>
+ </member>
+ <member name="M:System.Windows.Controls.Frame.Navigate(System.Uri)">
+ <summary>Navigates to the content specified by the uniform resource identifier (URI).</summary>
+ <returns>true if the navigation started successfully; otherwise, false.</returns>
+ <param name="source">The URI representing a page to display in the frame.</param>
+ </member>
+ <member name="E:System.Windows.Controls.Frame.Navigated">
+ <summary>Occurs when the content that is being navigated to has been found and is available.</summary>
+ </member>
+ <member name="E:System.Windows.Controls.Frame.Navigating">
+ <summary>Occurs when a new navigation is requested.</summary>
+ </member>
+ <member name="E:System.Windows.Controls.Frame.NavigationFailed">
+ <summary>Occurs when an error is encountered while navigating to the requested content.</summary>
+ </member>
+ <member name="E:System.Windows.Controls.Frame.NavigationStopped">
+ <summary>Occurs when a navigation is terminated by either calling the <see cref="M:System.Windows.Controls.Frame.StopLoading" /> method, or when a new navigation is requested while the current navigation is in progress.</summary>
+ </member>
+ <member name="M:System.Windows.Controls.Frame.OnApplyTemplate">
+ <summary>Builds the visual tree for the <see cref="T:System.Windows.Controls.Frame" /> when a new template is applied.</summary>
+ </member>
+ <member name="M:System.Windows.Controls.Frame.OnCreateAutomationPeer">
+ <summary>Returns a <see cref="T:System.Windows.Automation.Peers.FrameAutomationPeer" /> for use by the Silverlight automation infrastructure.</summary>
+ <returns>A <see cref="T:System.Windows.Automation.Peers.FrameAutomationPeer" /> for the <see cref="T:System.Windows.Controls.Frame" /> object.</returns>
+ </member>
+ <member name="M:System.Windows.Controls.Frame.Refresh">
+ <summary>Reloads the current page. </summary>
+ </member>
+ <member name="P:System.Windows.Controls.Frame.Source">
+ <summary>Gets or sets the uniform resource identifier (URI) of the current content or the content that is being navigated to.</summary>
+ <returns>A value that represents the URI of the current content or the content that is being navigated to.</returns>
+ </member>
+ <member name="F:System.Windows.Controls.Frame.SourceProperty">
+ <summary>Identifies the <see cref="P:System.Windows.Controls.Frame.Source" /> dependency property.</summary>
+ <returns>The identifier for the <see cref="P:System.Windows.Controls.Frame.Source" /> dependency property.</returns>
+ </member>
+ <member name="M:System.Windows.Controls.Frame.StopLoading">
+ <summary>Stops asynchronous navigations that have not yet been processed.</summary>
+ </member>
+ <member name="P:System.Windows.Controls.Frame.UriMapper">
+ <summary>Gets or sets the object to manage converting a uniform resource identifier (URI) to another URI for this frame.</summary>
+ <returns>The object to convert URIs for this frame.</returns>
+ </member>
+ <member name="F:System.Windows.Controls.Frame.UriMapperProperty">
+ <summary>Identifies the <see cref="P:System.Windows.Controls.Frame.UriMapper" /> dependency property.</summary>
+ <returns>The identifier for the <see cref="P:System.Windows.Controls.Frame.UriMapper" /> dependency property.</returns>
+ </member>
+ <member name="T:System.Windows.Controls.Page">
+ <summary>Encapsulates content that can be navigated to by a <see cref="T:System.Windows.Controls.Frame" />.</summary>
+ </member>
+ <member name="M:System.Windows.Controls.Page.#ctor">
+ <summary>Initializes a new instance of the <see cref="T:System.Windows.Controls.Page" /> class. </summary>
+ </member>
+ <member name="P:System.Windows.Controls.Page.NavigationCacheMode">
+ <summary>Gets or sets a value that indicates whether this page is cached and whether it is cached indefinitely.</summary>
+ <returns>The value that specifies the caching behavior for this page.</returns>
+ </member>
+ <member name="P:System.Windows.Controls.Page.NavigationContext">
+ <summary>Gets an object that contains information about the navigation request.</summary>
+ <returns>An object that contains information about the navigation request.</returns>
+ </member>
+ <member name="P:System.Windows.Controls.Page.NavigationService">
+ <summary>Gets the service that the host used to navigate to this page.</summary>
+ <returns>The service the host used to navigate to this page.</returns>
+ </member>
+ <member name="M:System.Windows.Controls.Page.OnFragmentNavigation(System.Windows.Navigation.FragmentNavigationEventArgs)">
+ <summary>Called when navigating to a fragment on a page.</summary>
+ <param name="e">An object that contains the event data.</param>
+ </member>
+ <member name="M:System.Windows.Controls.Page.OnNavigatedFrom(System.Windows.Navigation.NavigationEventArgs)">
+ <summary>Called when a page is no longer the active page in a frame. </summary>
+ <param name="e">An object that contains the event data.</param>
+ </member>
+ <member name="M:System.Windows.Controls.Page.OnNavigatedTo(System.Windows.Navigation.NavigationEventArgs)">
+ <summary>Called when a page becomes the active page in a frame. </summary>
+ <param name="e">An object that contains the event data.</param>
+ </member>
+ <member name="M:System.Windows.Controls.Page.OnNavigatingFrom(System.Windows.Navigation.NavigatingCancelEventArgs)">
+ <summary>Called just before a page is no longer the active page in a frame.</summary>
+ <param name="e">An object that contains the event data.</param>
+ </member>
+ <member name="P:System.Windows.Controls.Page.Title">
+ <summary>Gets or sets the name for the page.</summary>
+ <returns>The name for the page.</returns>
+ </member>
+ <member name="T:System.Windows.Navigation.FragmentNavigationEventArgs">
+ <summary>Provides data for the <see cref="M:System.Windows.Controls.Page.OnFragmentNavigation(System.Windows.Navigation.FragmentNavigationEventArgs)" /> method and <see cref="E:System.Windows.Navigation.NavigationService.FragmentNavigation" /> event.</summary>
+ </member>
+ <member name="P:System.Windows.Navigation.FragmentNavigationEventArgs.Fragment">
+ <summary>Gets the uniform resource identifier (URI) fragment.</summary>
+ <returns>The URI fragment. </returns>
+ </member>
+ <member name="T:System.Windows.Navigation.FragmentNavigationEventHandler">
+ <summary>Represents the method that will handle the <see cref="E:System.Windows.Navigation.NavigationService.FragmentNavigation" /> event. </summary>
+ <param name="sender">The source of the event.</param>
+ <param name="e">The data for the event.</param>
+ </member>
+ <member name="T:System.Windows.Navigation.INavigationContentLoader">
+ <summary>Defines methods for loading content that corresponds to a URI. </summary>
+ </member>
+ <member name="M:System.Windows.Navigation.INavigationContentLoader.BeginLoad(System.Uri,System.Uri,System.AsyncCallback,System.Object)">
+ <summary>Begins asynchronous loading of the content for the specified target URI. </summary>
+ <returns>An object that stores information about the asynchronous operation.</returns>
+ <param name="targetUri">The URI to load content for.</param>
+ <param name="currentUri">The URI that is currently loaded. </param>
+ <param name="userCallback">The method to call when the content finishes loading. </param>
+ <param name="asyncState">An object for storing custom state information.</param>
+ </member>
+ <member name="M:System.Windows.Navigation.INavigationContentLoader.CancelLoad(System.IAsyncResult)">
+ <summary>Attempts to cancel content loading for the specified asynchronous operation. </summary>
+ <param name="asyncResult">An object that identifies the asynchronous operation to cancel. </param>
+ </member>
+ <member name="M:System.Windows.Navigation.INavigationContentLoader.CanLoad(System.Uri,System.Uri)">
+ <summary>Gets a value that indicates whether the specified URI can be loaded. </summary>
+ <returns>true if the URI can be loaded; otherwise, false.</returns>
+ <param name="targetUri">The URI to test.</param>
+ <param name="currentUri">The URI that is currently loaded.</param>
+ </member>
+ <member name="M:System.Windows.Navigation.INavigationContentLoader.EndLoad(System.IAsyncResult)">
+ <summary>Completes the asynchronous content loading operation. </summary>
+ <returns>An object that represents the result of the asynchronous content loading operation.</returns>
+ <param name="asyncResult">An object that identifies the asynchronous operation.</param>
+ </member>
+ <member name="T:System.Windows.Navigation.JournalOwnership">
+ <summary>Specifies the type of journal used by the frame. </summary>
+ </member>
+ <member name="F:System.Windows.Navigation.JournalOwnership.Automatic">
+ <summary>If the <see cref="T:System.Windows.Controls.Frame" /> control is a top-level frame, it integrates with the browser journal; otherwise, it maintains its own journal.</summary>
+ </member>
+ <member name="F:System.Windows.Navigation.JournalOwnership.OwnsJournal">
+ <summary>The <see cref="T:System.Windows.Controls.Frame" /> maintains its own journal. This option can be used with any <see cref="T:System.Windows.Controls.Frame" />.</summary>
+ </member>
+ <member name="F:System.Windows.Navigation.JournalOwnership.UsesParentJournal">
+ <summary>The <see cref="T:System.Windows.Controls.Frame" /> integrates with the browser journal. This option can be used only with a top-level <see cref="T:System.Windows.Controls.Frame" />; otherwise, an exception is thrown.</summary>
+ </member>
+ <member name="T:System.Windows.Navigation.LoadResult">
+ <summary>Represents the content loaded by an <see cref="T:System.Windows.Navigation.INavigationContentLoader" /> implementation.</summary>
+ </member>
+ <member name="M:System.Windows.Navigation.LoadResult.#ctor(System.Object)">
+ <summary>Initializes a new instance of the <see cref="T:System.Windows.Navigation.LoadResult" /> class and sets the <see cref="P:System.Windows.Navigation.LoadResult.LoadedContent" /> property to the specified object.</summary>
+ <param name="loadedContent">The loaded page.</param>
+ </member>
+ <member name="M:System.Windows.Navigation.LoadResult.#ctor(System.Uri)">
+ <summary>Initializes a new instance of the <see cref="T:System.Windows.Navigation.LoadResult" /> class and sets the <see cref="P:System.Windows.Navigation.LoadResult.RedirectUri" /> property to the specified object.</summary>
+ <param name="redirectUri">The URI to redirect navigation to.</param>
+ </member>
+ <member name="P:System.Windows.Navigation.LoadResult.LoadedContent">
+ <summary>Gets the loaded page.</summary>
+ <returns>The loaded page.</returns>
+ </member>
+ <member name="P:System.Windows.Navigation.LoadResult.RedirectUri">
+ <summary>Gets the URI to redirect navigation to.</summary>
+ <returns>The URI to redirect navigation to.</returns>
+ </member>
+ <member name="T:System.Windows.Navigation.NavigationCacheMode">
+ <summary>Specifies how the page is cached when used within a frame.</summary>
+ </member>
+ <member name="F:System.Windows.Navigation.NavigationCacheMode.Disabled">
+ <summary>The page is never cached and a new instance of the page is created on each visit.</summary>
+ </member>
+ <member name="F:System.Windows.Navigation.NavigationCacheMode.Required">
+ <summary>The page is cached and the cached instance is reused for every visit regardless of the cache size for the frame.</summary>
+ </member>
+ <member name="F:System.Windows.Navigation.NavigationCacheMode.Enabled">
+ <summary>The page is cached, but the cached instance is discarded when the size of the cache for the frame is exceeded.</summary>
+ </member>
+ <member name="T:System.Windows.Navigation.NavigationContext">
+ <summary>Represents the state of a navigation operation.</summary>
+ </member>
+ <member name="P:System.Windows.Navigation.NavigationContext.QueryString">
+ <summary>Gets a collection of query string values.</summary>
+ <returns>A collection that contains the query string values.</returns>
+ </member>
+ <member name="T:System.Windows.Navigation.NavigationFailedEventArgs">
+ <summary>Provides data for the <see cref="E:System.Windows.Navigation.NavigationService.NavigationFailed" /> event of the <see cref="T:System.Windows.Navigation.NavigationService" /> class and the <see cref="E:System.Windows.Controls.Frame.NavigationFailed" /> event of the <see cref="T:System.Windows.Controls.Frame" /> class.</summary>
+ </member>
+ <member name="P:System.Windows.Navigation.NavigationFailedEventArgs.Exception">
+ <summary>Gets the error from the failed navigation.</summary>
+ <returns>A value that represents the error.</returns>
+ </member>
+ <member name="P:System.Windows.Navigation.NavigationFailedEventArgs.Handled">
+ <summary>Gets or sets a value that indicates whether the failure event has been handled.</summary>
+ <returns>true if the event has been handled; otherwise, false.</returns>
+ </member>
+ <member name="P:System.Windows.Navigation.NavigationFailedEventArgs.Uri">
+ <summary>Gets the uniform resource identifier (URI) for the content that could not be navigated to.</summary>
+ <returns>A value that represents the URI.</returns>
+ </member>
+ <member name="T:System.Windows.Navigation.NavigationFailedEventHandler">
+ <summary>Represents the method that will handle the <see cref="E:System.Windows.Navigation.NavigationService.NavigationFailed" /> event. </summary>
+ <param name="sender">The source of the event.</param>
+ <param name="e">The data for the event.</param>
+ </member>
+ <member name="T:System.Windows.Navigation.NavigationService">
+ <summary>Provides methods, properties, and events to support navigation within a Silverlight application.</summary>
+ </member>
+ <member name="P:System.Windows.Navigation.NavigationService.CanGoBack">
+ <summary>Gets a value that indicates whether there is at least one entry in the back navigation history.</summary>
+ <returns>true if there is at least one entry in the back navigation history; otherwise, false.</returns>
+ </member>
+ <member name="P:System.Windows.Navigation.NavigationService.CanGoForward">
+ <summary>Gets a value that indicates whether there is at least one entry in the forward navigation history.</summary>
+ <returns>true if there is at least one entry in the forward navigation history; otherwise, false.</returns>
+ </member>
+ <member name="P:System.Windows.Navigation.NavigationService.CurrentSource">
+ <summary>Gets the uniform resource identifier (URI) of the content that is currently displayed.</summary>
+ <returns>A value that represents the URI of content that is currently displayed.</returns>
+ </member>
+ <member name="E:System.Windows.Navigation.NavigationService.FragmentNavigation">
+ <summary>Occurs when navigation to a content fragment begins.</summary>
+ </member>
+ <member name="M:System.Windows.Navigation.NavigationService.GoBack">
+ <summary>Navigates to the most recent entry in the back navigation history, or throws an exception if no entry exists in back navigation.</summary>
+ <exception cref="T:System.InvalidOperationException">There are no entries in the back navigation history.</exception>
+ </member>
+ <member name="M:System.Windows.Navigation.NavigationService.GoForward">
+ <summary>Navigates to the most recent entry in the forward navigation history, or throws an exception if no entry exists in forward navigation.</summary>
+ <exception cref="T:System.InvalidOperationException">There are no entries in the forward navigation history.</exception>
+ </member>
+ <member name="M:System.Windows.Navigation.NavigationService.Navigate(System.Uri)">
+ <summary>Navigates to the content specified by the uniform resource identifier (URI).</summary>
+ <returns>true if the navigation started successfully; otherwise, false.</returns>
+ <param name="source">The URI of the content to navigate to.</param>
+ </member>
+ <member name="E:System.Windows.Navigation.NavigationService.Navigated">
+ <summary>Occurs when the content that is being navigated to has been found and is available.</summary>
+ </member>
+ <member name="E:System.Windows.Navigation.NavigationService.Navigating">
+ <summary>Occurs when a new navigation is requested.</summary>
+ </member>
+ <member name="E:System.Windows.Navigation.NavigationService.NavigationFailed">
+ <summary>Occurs when an error is encountered while navigating to the requested content.</summary>
+ </member>
+ <member name="E:System.Windows.Navigation.NavigationService.NavigationStopped">
+ <summary>Occurs when the <see cref="M:System.Windows.Navigation.NavigationService.StopLoading" /> method is called, or when a new navigation is requested while the current navigation is in progress.</summary>
+ </member>
+ <member name="M:System.Windows.Navigation.NavigationService.Refresh">
+ <summary>Reloads the current page. </summary>
+ </member>
+ <member name="P:System.Windows.Navigation.NavigationService.Source">
+ <summary>Gets or sets the uniform resource identifier (URI) of the current content or the content that is being navigated to.</summary>
+ <returns>A value that represents the URI of the current content or the content that is being navigated to.</returns>
+ </member>
+ <member name="M:System.Windows.Navigation.NavigationService.StopLoading">
+ <summary>Stops asynchronous navigations that have not yet been processed.</summary>
+ </member>
+ <member name="T:System.Windows.Navigation.NavigationStoppedEventHandler">
+ <summary>Represents the method that will handle the <see cref="E:System.Windows.Navigation.NavigationService.NavigationStopped" /> event. </summary>
+ <param name="sender">The source of the event.</param>
+ <param name="e">The data for the event.</param>
+ </member>
+ <member name="T:System.Windows.Navigation.PageResourceContentLoader">
+ <summary>Loads pages from the application package (.xap file) that correspond to a given URI.</summary>
+ </member>
+ <member name="M:System.Windows.Navigation.PageResourceContentLoader.#ctor">
+ <summary>Initializes a new instance of the <see cref="T:System.Windows.Navigation.PageResourceContentLoader" /> class. </summary>
+ </member>
+ <member name="M:System.Windows.Navigation.PageResourceContentLoader.BeginLoad(System.Uri,System.Uri,System.AsyncCallback,System.Object)">
+ <summary>Begins asynchronous loading of the page that corresponds to the specified target URI.</summary>
+ <returns>An object that stores information about the asynchronous operation.</returns>
+ <param name="targetUri">The URI of the page to load.</param>
+ <param name="currentUri">The URI of the page that is currently loaded.</param>
+ <param name="userCallback">The method to call when the page finishes loading.</param>
+ <param name="asyncState">An object for storing custom state information.</param>
+ </member>
+ <member name="M:System.Windows.Navigation.PageResourceContentLoader.CancelLoad(System.IAsyncResult)">
+ <summary>Attempts to cancel content loading for the specified asynchronous operation.</summary>
+ <param name="asyncResult">An object that identifies the asynchronous operation to cancel.</param>
+ </member>
+ <member name="M:System.Windows.Navigation.PageResourceContentLoader.CanLoad(System.Uri,System.Uri)">
+ <summary>Gets a value that indicates whether the specified URI can be loaded.</summary>
+ <returns>true if the URI can be loaded; otherwise, false.</returns>
+ <param name="targetUri">The URI to test.</param>
+ <param name="currentUri">The URI of the page that is currently loaded.</param>
+ </member>
+ <member name="M:System.Windows.Navigation.PageResourceContentLoader.EndLoad(System.IAsyncResult)">
+ <summary>Completes the asynchronous content loading operation.</summary>
+ <returns>An object that represents the result of the asynchronous content loading operation.</returns>
+ <param name="asyncResult">An object that identifies the asynchronous operation.</param>
+ </member>
+ <member name="T:System.Windows.Navigation.UriMapper">
+ <summary>Converts a uniform resource identifier (URI) into a new URI based on the rules of a matching object specified in a collection of mapping objects.</summary>
+ </member>
+ <member name="M:System.Windows.Navigation.UriMapper.#ctor">
+ <summary>Initializes a new instance of the <see cref="T:System.Windows.Navigation.UriMapper" /> class. </summary>
+ </member>
+ <member name="M:System.Windows.Navigation.UriMapper.MapUri(System.Uri)">
+ <summary>Converts a specified uniform resource identifier (URI) into a new URI based on the rules of a matching object in the <see cref="P:System.Windows.Navigation.UriMapper.UriMappings" /> collection.</summary>
+ <returns>A URI to use for handling the request instead of the value of the <paramref name="uri" /> parameter. If no object in the <see cref="P:System.Windows.Navigation.UriMapper.UriMappings" /> collection matches <paramref name="uri" />, the original value for <paramref name="uri" /> is returned.</returns>
+ <param name="uri">Original URI value to be converted to a new URI.</param>
+ <exception cref="T:System.InvalidOperationException">The <see cref="P:System.Windows.Navigation.UriMapper.UriMappings" /> property is null.</exception>
+ </member>
+ <member name="P:System.Windows.Navigation.UriMapper.UriMappings">
+ <summary>Gets a collection of objects that are used to convert a uniform resource identifier (URI) into a new URI.</summary>
+ <returns>A collection of objects that are used to convert URI values.</returns>
+ </member>
+ <member name="T:System.Windows.Navigation.UriMapperBase">
+ <summary>Represents the base class for classes that convert a requested uniform resource identifier (URI) into a new URI based on mapping rules.</summary>
+ </member>
+ <member name="M:System.Windows.Navigation.UriMapperBase.#ctor">
+ <summary>Initializes a new instance of the <see cref="T:System.Windows.Navigation.UriMapperBase" /> class. </summary>
+ </member>
+ <member name="M:System.Windows.Navigation.UriMapperBase.MapUri(System.Uri)">
+ <summary>When overridden in a derived class, converts a requested uniform resource identifier (URI) to a new URI.</summary>
+ <returns>A URI to use for the request instead of the value in the <paramref name="uri" /> parameter.</returns>
+ <param name="uri">The original URI value to be mapped to a new URI.</param>
+ </member>
+ <member name="T:System.Windows.Navigation.UriMapping">
+ <summary>Defines the pattern for converting a requested uniform resource identifier (URI) into a new URI.</summary>
+ </member>
+ <member name="M:System.Windows.Navigation.UriMapping.#ctor">
+ <summary>Initializes a new instance of the <see cref="T:System.Windows.Navigation.UriMapping" /> class. </summary>
+ </member>
+ <member name="P:System.Windows.Navigation.UriMapping.MappedUri">
+ <summary>Gets or sets the uniform resource identifier (URI) that is navigated to instead of the originally requested URI.</summary>
+ <returns>The URI that the requested URI is converted to.</returns>
+ </member>
+ <member name="M:System.Windows.Navigation.UriMapping.MapUri(System.Uri)">
+ <summary>Converts the specified uniform resource identifier (URI) to a new URI, if the specified URI matches the defined template for converting.</summary>
+ <returns>The URI that has been converted or null if the URI cannot be converted.</returns>
+ <param name="uri">The URI to convert.</param>
+ <exception cref="T:System.InvalidOperationException">
+ <see cref="P:System.Windows.Navigation.UriMapping.Uri" /> is null.-or-<see cref="P:System.Windows.Navigation.UriMapping.MappedUri" /> is null.-or-<see cref="P:System.Windows.Navigation.UriMapping.Uri" /> includes a query string.-or-<see cref="P:System.Windows.Navigation.UriMapping.Uri" /> includes a content fragment.</exception>
+ </member>
+ <member name="P:System.Windows.Navigation.UriMapping.Uri">
+ <summary>Gets or sets the pattern to match when determining if the requested uniform resource identifier (URI) is converted to a mapped URI.</summary>
+ <returns>The URI that will be converted.</returns>
+ </member>
+ </members>
+</doc> \ No newline at end of file
diff --git a/cs/demo/Glacier2/sl/chat/bin/chat.xap b/cs/demo/Glacier2/sl/chat/bin/chat.xap
new file mode 100644
index 00000000000..6200a293731
--- /dev/null
+++ b/cs/demo/Glacier2/sl/chat/bin/chat.xap
Binary files differ
diff --git a/cs/demo/Glacier2/sl/chat/bin/chatTestPage.html b/cs/demo/Glacier2/sl/chat/bin/chatTestPage.html
new file mode 100644
index 00000000000..524b06f2166
--- /dev/null
+++ b/cs/demo/Glacier2/sl/chat/bin/chatTestPage.html
@@ -0,0 +1,73 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" >
+<!-- saved from url=(0014)about:internet -->
+<head>
+ <title>chat</title>
+ <style type="text/css">
+ html, body {
+ height: 100%;
+ overflow: auto;
+ }
+ body {
+ padding: 0;
+ margin: 0;
+ }
+ #silverlightControlHost {
+ height: 100%;
+ text-align:center;
+ }
+ </style>
+
+ <script type="text/javascript">
+ function onSilverlightError(sender, args) {
+ var appSource = "";
+ if (sender != null && sender != 0) {
+ appSource = sender.getHost().Source;
+ }
+
+ var errorType = args.ErrorType;
+ var iErrorCode = args.ErrorCode;
+
+ if (errorType == "ImageError" || errorType == "MediaError") {
+ return;
+ }
+
+ var errMsg = "Unhandled Error in Silverlight Application " + appSource + "\n" ;
+
+ errMsg += "Code: "+ iErrorCode + " \n";
+ errMsg += "Category: " + errorType + " \n";
+ errMsg += "Message: " + args.ErrorMessage + " \n";
+
+ if (errorType == "ParserError") {
+ errMsg += "File: " + args.xamlFile + " \n";
+ errMsg += "Line: " + args.lineNumber + " \n";
+ errMsg += "Position: " + args.charPosition + " \n";
+ }
+ else if (errorType == "RuntimeError") {
+ if (args.lineNumber != 0) {
+ errMsg += "Line: " + args.lineNumber + " \n";
+ errMsg += "Position: " + args.charPosition + " \n";
+ }
+ errMsg += "MethodName: " + args.methodName + " \n";
+ }
+
+ throw new Error(errMsg);
+ }
+ </script>
+</head>
+<body>
+ <form id="form1" runat="server" style="height:100%">
+ <div id="silverlightControlHost">
+ <object data="data:application/x-silverlight-2," type="application/x-silverlight-2" width="100%" height="100%">
+ <param name="source" value="chat.xap"/>
+ <param name="onError" value="onSilverlightError" />
+ <param name="background" value="white" />
+ <param name="minRuntimeVersion" value="5.0.61118.0" />
+ <param name="autoUpgrade" value="true" />
+ <a href="http://go.microsoft.com/fwlink/?LinkID=149156&v=5.0.61118.0" style="text-decoration:none">
+ <img src="http://go.microsoft.com/fwlink/?LinkId=161376" alt="Get Microsoft Silverlight" style="border-style:none"/>
+ </a>
+ </object><iframe id="_sl_historyFrame" style="visibility:hidden;height:0px;width:0px;border:0px"></iframe></div>
+ </form>
+</body>
+</html>
diff --git a/cs/demo/Glacier2/sl/chat/chat.csproj b/cs/demo/Glacier2/sl/chat/chat.csproj
new file mode 100644
index 00000000000..4afa49ceef8
--- /dev/null
+++ b/cs/demo/Glacier2/sl/chat/chat.csproj
@@ -0,0 +1,145 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup>
+ <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+ <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+ <ProductVersion>8.0.50727</ProductVersion>
+ <SchemaVersion>2.0</SchemaVersion>
+ <ProjectGuid>{78FA0B57-6672-4173-8CA3-C81FA402F4E1}</ProjectGuid>
+ <ProjectTypeGuids>{A1591282-1198-4647-A2B1-27E5FF5F6F3B};{fae04ec0-301f-11d3-bf4b-00c04f79efbc}</ProjectTypeGuids>
+ <OutputType>Library</OutputType>
+ <AppDesignerFolder>Properties</AppDesignerFolder>
+ <RootNamespace>chat</RootNamespace>
+ <AssemblyName>chat</AssemblyName>
+ <TargetFrameworkIdentifier>Silverlight</TargetFrameworkIdentifier>
+ <TargetFrameworkVersion>v5.0</TargetFrameworkVersion>
+ <SilverlightVersion>$(TargetFrameworkVersion)</SilverlightVersion>
+ <SilverlightApplication>true</SilverlightApplication>
+ <SupportedCultures>
+ </SupportedCultures>
+ <XapOutputs>true</XapOutputs>
+ <GenerateSilverlightManifest>true</GenerateSilverlightManifest>
+ <XapFilename>chat.xap</XapFilename>
+ <SilverlightManifestTemplate>Properties\AppManifest.xml</SilverlightManifestTemplate>
+ <SilverlightAppEntry>chat.App</SilverlightAppEntry>
+ <TestPageFileName>chatTestPage.html</TestPageFileName>
+ <CreateTestPage>true</CreateTestPage>
+ <ValidateXaml>true</ValidateXaml>
+ <EnableOutOfBrowser>false</EnableOutOfBrowser>
+ <OutOfBrowserSettingsFile>Properties\OutOfBrowserSettings.xml</OutOfBrowserSettingsFile>
+ <UsePlatformExtensions>false</UsePlatformExtensions>
+ <ThrowErrorsInValidation>true</ThrowErrorsInValidation>
+ <LinkedServerProject>
+ </LinkedServerProject>
+ </PropertyGroup>
+ <!-- This property group is only here to support building this project using the
+ MSBuild 3.5 toolset. In order to work correctly with this older toolset, it needs
+ to set the TargetFrameworkVersion to v3.5 -->
+ <PropertyGroup Condition="'$(MSBuildToolsVersion)' == '3.5'">
+ <TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+ <DebugSymbols>true</DebugSymbols>
+ <DebugType>full</DebugType>
+ <Optimize>false</Optimize>
+ <OutputPath>Bin\Debug\</OutputPath>
+ <DefineConstants>DEBUG;TRACE;SILVERLIGHT</DefineConstants>
+ <NoStdLib>true</NoStdLib>
+ <NoConfig>true</NoConfig>
+ <ErrorReport>prompt</ErrorReport>
+ <WarningLevel>4</WarningLevel>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+ <DebugType>pdbonly</DebugType>
+ <Optimize>true</Optimize>
+ <OutputPath>Bin\Release\</OutputPath>
+ <DefineConstants>TRACE;SILVERLIGHT</DefineConstants>
+ <NoStdLib>true</NoStdLib>
+ <NoConfig>true</NoConfig>
+ <ErrorReport>prompt</ErrorReport>
+ <WarningLevel>4</WarningLevel>
+ </PropertyGroup>
+ <ItemGroup>
+ <Reference Include="Glacier2, Version=3.4.2.0, Culture=neutral, PublicKeyToken=1f998c50fec78381, processorArchitecture=MSIL" />
+ <Reference Include="Ice, Version=3.4.2.0, Culture=neutral, PublicKeyToken=1f998c50fec78381, processorArchitecture=MSIL" />
+ <Reference Include="mscorlib" />
+ <Reference Include="System.Windows" />
+ <Reference Include="system" />
+ <Reference Include="System.Core" />
+ <Reference Include="System.Net" />
+ <Reference Include="System.Windows.Controls.Navigation, Version=5.0.5.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL" />
+ <Reference Include="System.Xml" />
+ <Reference Include="System.Windows.Browser" />
+ </ItemGroup>
+ <ItemGroup>
+ <Compile Include="App.xaml.cs">
+ <DependentUpon>App.xaml</DependentUpon>
+ </Compile>
+ <Compile Include="Chat.cs">
+ <SubType>Code</SubType>
+ </Compile>
+ <Compile Include="ChatPage.xaml.cs">
+ <DependentUpon>ChatPage.xaml</DependentUpon>
+ </Compile>
+ <Compile Include="ConnectingPage.xaml.cs">
+ <DependentUpon>ConnectingPage.xaml</DependentUpon>
+ </Compile>
+ <Compile Include="Coordinator.cs" />
+ <Compile Include="DisconnectingPage.xaml.cs">
+ <DependentUpon>DisconnectingPage.xaml</DependentUpon>
+ </Compile>
+ <Compile Include="LoginPage.xaml.cs">
+ <DependentUpon>LoginPage.xaml</DependentUpon>
+ </Compile>
+ <Compile Include="MainPage.xaml.cs">
+ <DependentUpon>MainPage.xaml</DependentUpon>
+ </Compile>
+ <Compile Include="Properties\AssemblyInfo.cs" />
+ </ItemGroup>
+ <ItemGroup>
+ <ApplicationDefinition Include="App.xaml">
+ <SubType>Designer</SubType>
+ <Generator>MSBuild:Compile</Generator>
+ </ApplicationDefinition>
+ <Page Include="ChatPage.xaml">
+ <SubType>Designer</SubType>
+ <Generator>MSBuild:Compile</Generator>
+ </Page>
+ <Page Include="ConnectingPage.xaml">
+ <SubType>Designer</SubType>
+ <Generator>MSBuild:Compile</Generator>
+ </Page>
+ <Page Include="DisconnectingPage.xaml">
+ <SubType>Designer</SubType>
+ <Generator>MSBuild:Compile</Generator>
+ </Page>
+ <Page Include="LoginPage.xaml">
+ <SubType>Designer</SubType>
+ <Generator>MSBuild:Compile</Generator>
+ </Page>
+ <Page Include="MainPage.xaml">
+ <SubType>Designer</SubType>
+ <Generator>MSBuild:Compile</Generator>
+ </Page>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Chat.ice" />
+ <None Include="Properties\AppManifest.xml" />
+ </ItemGroup>
+ <Import Project="$(MSBuildExtensionsPath32)\Microsoft\Silverlight\$(SilverlightVersion)\Microsoft.Silverlight.CSharp.targets" />
+ <!-- To modify your build process, add your task inside one of the targets below and uncomment it.
+ Other similar extension points exist, see Microsoft.Common.targets.
+ <Target Name="BeforeBuild">
+ </Target>
+ <Target Name="AfterBuild">
+ </Target>
+ -->
+ <ProjectExtensions>
+ <VisualStudio>
+ <FlavorProperties GUID="{A1591282-1198-4647-A2B1-27E5FF5F6F3B}">
+ <SilverlightProjectProperties />
+ </FlavorProperties>
+ <UserProperties ZerocIce_Enabled="True" />
+ </VisualStudio>
+ </ProjectExtensions>
+</Project> \ No newline at end of file
diff --git a/cs/demo/Ice/compact/Program.cs b/cs/demo/Ice/compact/Program.cs
deleted file mode 100644
index ddcf47cb988..00000000000
--- a/cs/demo/Ice/compact/Program.cs
+++ /dev/null
@@ -1,19 +0,0 @@
-using System;
-using System.Linq;
-using System.Collections.Generic;
-using System.Windows.Forms;
-
-namespace client
-{
- static class Program
- {
- /// <summary>
- /// The main entry point for the application.
- /// </summary>
- [MTAThread]
- static void Main()
- {
- Application.Run(new MainForm());
- }
- }
-} \ No newline at end of file
diff --git a/cs/demo/Ice/compact/bidir/Callback.ice b/cs/demo/Ice/compact/bidir/Callback.ice
new file mode 100644
index 00000000000..2bdd497a048
--- /dev/null
+++ b/cs/demo/Ice/compact/bidir/Callback.ice
@@ -0,0 +1,30 @@
+// **********************************************************************
+//
+// Copyright (c) 2003-2011 ZeroC, Inc. All rights reserved.
+//
+// This copy of Ice is licensed to you under the terms described in the
+// ICE_LICENSE file included in this distribution.
+//
+// **********************************************************************
+
+#ifndef CALLBACK_ICE
+#define CALLBACK_ICE
+
+#include <Ice/Identity.ice>
+
+module Demo
+{
+
+interface CallbackReceiver
+{
+ void callback(int num);
+};
+
+interface CallbackSender
+{
+ void addClient(Ice::Identity ident);
+};
+
+};
+
+#endif
diff --git a/cs/demo/Ice/compact/bidir/CallbackSenderI.cs b/cs/demo/Ice/compact/bidir/CallbackSenderI.cs
new file mode 100644
index 00000000000..8669e0fe53f
--- /dev/null
+++ b/cs/demo/Ice/compact/bidir/CallbackSenderI.cs
@@ -0,0 +1,110 @@
+// **********************************************************************
+//
+// Copyright (c) 2003-2011 ZeroC, Inc. All rights reserved.
+//
+// This copy of Ice is licensed to you under the terms described in the
+// ICE_LICENSE file included in this distribution.
+//
+// **********************************************************************
+
+using Demo;
+using System;
+using System.Collections;
+
+class CallbackSenderI : CallbackSenderDisp_
+{
+ public CallbackSenderI(Ice.Communicator communicator)
+ {
+ _communicator = communicator;
+ _destroy = false;
+ _clients = new ArrayList();
+ }
+
+ public void destroy()
+ {
+ _m.Lock();
+ try
+ {
+ System.Console.Out.WriteLine("destroying callback sender");
+ _destroy = true;
+
+ _m.Notify();
+ }
+ finally
+ {
+ _m.Unlock();
+ }
+ }
+
+ public override void addClient(Ice.Identity ident, Ice.Current current)
+ {
+ _m.Lock();
+ try
+ {
+ System.Console.Out.WriteLine("adding client `" + _communicator.identityToString(ident) + "'");
+
+ Ice.ObjectPrx @base = current.con.createProxy(ident);
+ CallbackReceiverPrx client = CallbackReceiverPrxHelper.uncheckedCast(@base);
+ _clients.Add(client);
+ }
+ finally
+ {
+ _m.Unlock();
+ }
+ }
+
+ public void Run()
+ {
+ int num = 0;
+ while(true)
+ {
+ ArrayList clients;
+ _m.Lock();
+ try
+ {
+ _m.TimedWait(2000);
+ if(_destroy)
+ {
+ break;
+ }
+
+ clients = new ArrayList(_clients);
+ }
+ finally
+ {
+ _m.Unlock();
+ }
+
+ if(clients.Count > 0)
+ {
+ ++num;
+ foreach(CallbackReceiverPrx c in clients)
+ {
+ try
+ {
+ c.callback(num);
+ }
+ catch(Ice.LocalException ex)
+ {
+ Console.Error.WriteLine("removing client `" +
+ _communicator.identityToString(c.ice_getIdentity()) + "':\n" + ex);
+ _m.Lock();
+ try
+ {
+ _clients.Remove(c);
+ }
+ finally
+ {
+ _m.Unlock();
+ }
+ }
+ }
+ }
+ }
+ }
+
+ private Ice.Communicator _communicator;
+ private bool _destroy;
+ private ArrayList _clients;
+ private readonly IceUtilInternal.Monitor _m = new IceUtilInternal.Monitor();
+}
diff --git a/cs/demo/Ice/compact/bidir/MainForm.Designer.cs b/cs/demo/Ice/compact/bidir/MainForm.Designer.cs
new file mode 100644
index 00000000000..4911b127bc5
--- /dev/null
+++ b/cs/demo/Ice/compact/bidir/MainForm.Designer.cs
@@ -0,0 +1,107 @@
+namespace server
+{
+ partial class MainForm
+ {
+ /// <summary>
+ /// Required designer variable.
+ /// </summary>
+ private System.ComponentModel.IContainer components = null;
+ private System.Windows.Forms.MainMenu mainMenu1;
+
+ /// <summary>
+ /// Clean up any resources being used.
+ /// </summary>
+ /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
+ protected override void Dispose(bool disposing)
+ {
+ if (disposing && (components != null))
+ {
+ components.Dispose();
+ }
+ base.Dispose(disposing);
+ }
+
+ #region Windows Form Designer generated code
+
+ /// <summary>
+ /// Required method for Designer support - do not modify
+ /// the contents of this method with the code editor.
+ /// </summary>
+ private void InitializeComponent()
+ {
+ this.mainMenu1 = new System.Windows.Forms.MainMenu();
+ this.lblStatus = new System.Windows.Forms.Label();
+ this.btnStart = new System.Windows.Forms.Button();
+ this.btnStop = new System.Windows.Forms.Button();
+ this.lblPort = new System.Windows.Forms.Label();
+ this.txtPort = new System.Windows.Forms.TextBox();
+ this.SuspendLayout();
+ //
+ // lblStatus
+ //
+ this.lblStatus.Location = new System.Drawing.Point(13, 94);
+ this.lblStatus.Name = "lblStatus";
+ this.lblStatus.Size = new System.Drawing.Size(212, 79);
+ //
+ // btnStart
+ //
+ this.btnStart.Location = new System.Drawing.Point(13, 34);
+ this.btnStart.Name = "btnStart";
+ this.btnStart.Size = new System.Drawing.Size(212, 20);
+ this.btnStart.TabIndex = 2;
+ this.btnStart.Text = "Start Server";
+ this.btnStart.Click += new System.EventHandler(this.btnStart_Click);
+ //
+ // btnStop
+ //
+ this.btnStop.Enabled = false;
+ this.btnStop.Location = new System.Drawing.Point(13, 60);
+ this.btnStop.Name = "btnStop";
+ this.btnStop.Size = new System.Drawing.Size(212, 20);
+ this.btnStop.TabIndex = 3;
+ this.btnStop.Text = "Stop Server";
+ this.btnStop.Click += new System.EventHandler(this.btnStop_Click);
+ //
+ // lblPort
+ //
+ this.lblPort.Location = new System.Drawing.Point(13, 4);
+ this.lblPort.Name = "lblPort";
+ this.lblPort.Size = new System.Drawing.Size(39, 20);
+ this.lblPort.Text = "Port:";
+ //
+ // txtPort
+ //
+ this.txtPort.Location = new System.Drawing.Point(54, 4);
+ this.txtPort.Name = "txtPort";
+ this.txtPort.Size = new System.Drawing.Size(171, 21);
+ this.txtPort.TabIndex = 6;
+ this.txtPort.Text = "10000";
+ //
+ // MainForm
+ //
+ this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F);
+ this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Dpi;
+ this.AutoScroll = true;
+ this.ClientSize = new System.Drawing.Size(240, 268);
+ this.Controls.Add(this.txtPort);
+ this.Controls.Add(this.lblPort);
+ this.Controls.Add(this.btnStop);
+ this.Controls.Add(this.btnStart);
+ this.Controls.Add(this.lblStatus);
+ this.Menu = this.mainMenu1;
+ this.Name = "MainForm";
+ this.Text = "Bidir Server";
+ this.ResumeLayout(false);
+
+ }
+
+ #endregion
+
+ private System.Windows.Forms.Label lblStatus;
+ private System.Windows.Forms.Button btnStart;
+ private System.Windows.Forms.Button btnStop;
+ private System.Windows.Forms.Label lblPort;
+ private System.Windows.Forms.TextBox txtPort;
+ }
+}
+
diff --git a/cs/demo/Ice/compact/bidir/MainForm.cs b/cs/demo/Ice/compact/bidir/MainForm.cs
new file mode 100644
index 00000000000..73576214f7a
--- /dev/null
+++ b/cs/demo/Ice/compact/bidir/MainForm.cs
@@ -0,0 +1,103 @@
+// **********************************************************************
+//
+// Copyright (c) 2003-2011 ZeroC, Inc. All rights reserved.
+//
+// This copy of Ice is licensed to you under the terms described in the
+// ICE_LICENSE file included in this distribution.
+//
+// **********************************************************************
+
+using System;
+using System.Linq;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Data;
+using System.Drawing;
+using System.Text;
+using System.Windows.Forms;
+using System.Threading;
+
+namespace server
+{
+ public partial class MainForm : Form
+ {
+ public MainForm()
+ {
+ InitializeComponent();
+ }
+
+ protected override void OnClosed(EventArgs e)
+ {
+ base.OnClosed(e);
+ stop();
+ }
+
+ private void btnStart_Click(object sender, EventArgs e)
+ {
+ try
+ {
+ Ice.InitializationData initData = new Ice.InitializationData();
+ initData.properties = Ice.Util.createProperties();
+ initData.properties.setProperty("Callback.Server.Endpoints", "tcp -h 0.0.0.0 -p " + txtPort.Text);
+ _communicator = Ice.Util.initialize(initData);
+
+ Ice.ObjectAdapter adapter = _communicator.createObjectAdapter("Callback.Server");
+ _sender = new CallbackSenderI(_communicator);
+ adapter.add(_sender, _communicator.stringToIdentity("sender"));
+ adapter.activate();
+
+ _thread = new Thread(new ThreadStart(_sender.Run));
+ _thread.Start();
+ btnStart.Enabled = false;
+ btnStop.Enabled = true;
+ }
+ catch(Exception ex)
+ {
+ lblStatus.Text = "Start Failed: " + Environment.NewLine + ex.ToString();
+ }
+ lblStatus.Text = "Server started ok";
+ }
+
+ private void btnStop_Click(object sender, EventArgs e)
+ {
+ stop();
+ }
+
+ private void stop()
+ {
+ try
+ {
+ if(_communicator == null)
+ {
+ return;
+ }
+ _communicator.destroy();
+ _communicator = null;
+
+ if(_sender != null)
+ {
+ _sender.destroy();
+ }
+
+ if(_thread != null)
+ {
+ _thread.Join();
+ }
+ }
+ catch(Exception ex)
+ {
+ lblStatus.Text = "Stop Failed: " + Environment.NewLine + ex.ToString();
+ }
+ finally
+ {
+ btnStart.Enabled = true;
+ btnStop.Enabled = false;
+ }
+ lblStatus.Text = "Server stoped ok";
+ }
+
+ private Ice.Communicator _communicator;
+ private CallbackSenderI _sender;
+ private Thread _thread;
+ }
+} \ No newline at end of file
diff --git a/cs/demo/Ice/compact/MainForm.resx b/cs/demo/Ice/compact/bidir/MainForm.resx
index c9d1ac5082d..c9d1ac5082d 100644
--- a/cs/demo/Ice/compact/MainForm.resx
+++ b/cs/demo/Ice/compact/bidir/MainForm.resx
diff --git a/cs/demo/Ice/compact/bidir/Program.cs b/cs/demo/Ice/compact/bidir/Program.cs
new file mode 100644
index 00000000000..9f62d25cec9
--- /dev/null
+++ b/cs/demo/Ice/compact/bidir/Program.cs
@@ -0,0 +1,28 @@
+// **********************************************************************
+//
+// Copyright (c) 2003-2011 ZeroC, Inc. All rights reserved.
+//
+// This copy of Ice is licensed to you under the terms described in the
+// ICE_LICENSE file included in this distribution.
+//
+// **********************************************************************
+
+using System;
+using System.Linq;
+using System.Collections.Generic;
+using System.Windows.Forms;
+
+namespace server
+{
+ static class Program
+ {
+ /// <summary>
+ /// The main entry point for the application.
+ /// </summary>
+ [MTAThread]
+ static void Main()
+ {
+ Application.Run(new MainForm());
+ }
+ }
+} \ No newline at end of file
diff --git a/cs/demo/Ice/compact/bidir/README.txt b/cs/demo/Ice/compact/bidir/README.txt
new file mode 100644
index 00000000000..f8939ecb777
--- /dev/null
+++ b/cs/demo/Ice/compact/bidir/README.txt
@@ -0,0 +1,58 @@
+This demo shows how to write a simple C# server application using Ice
+for .NET Compact Framework (CF).
+
+This demo requires a bidir client. You can use the C# client located
+in ..\..\bidir, or you can use a client from any other language mapping.
+
+You must use Visual Studio 2008 to build this client (Visual Studio
+2010 does not support Compact Framework development). Follow these
+instructions to build and run the client:
+
+1) Open the project in Visual Studio 2008. This is a Smart Device
+ project and therefore Visual Studio will compile it against the
+ Compact Framework libraries. Furthermore, the Ice Visual Studio
+ Add-in detects a Smart Device project and automatically
+ configures the project to compile against the Ice for .NET CF
+ DLL in <Ice installation directory>\bin\cf\Ice.dll.
+
+2) Build the client by right-clicking on the project and choosing
+ "Build".
+
+3) Start a device emulator. Select Tools -> Device Emulator Manager,
+ highlight "USA Windows Mobile 5.0 Pocket PC R2 Emulator", and
+ select Actions -> Connect.
+
+4) In the emulator window, select File -> Configure, open the Network
+ tab, and check "Enable NE2000 PCMCIA network adapter". Open the
+ drop-down menu and select the appropriate network adapter, then
+ press OK.
+
+ If you get an error dialog that mentions Virtual PC 2007, you will
+ need to install this product to enable network access for the
+ emulator. You can download Virtual PC 2007 at the link below:
+
+ http://www.microsoft.com/downloads/en/details.aspx?FamilyID=04d26402-3199-48a3-afa2-2dc0b40a73b6
+
+ Close the emulator, install Virtual PC 2007, and restart the
+ emulator.
+
+5) After successfully enabling the network adapter, you may need to
+ activate the network connection. Click on the symbol resembling an
+ antenna in the device's status bar and choose Connect to start the
+ connection. If you wish, start Internet Explorer and verify that
+ you can successfully access the Internet.
+
+6) In Visual Studio, right-click on the project, choose Deploy, select
+ the "USA Windows Mobile 5.0 Pocket PC R2 Emulator" device, and
+ click Deploy. This action causes Visual Studio to install the .NET
+ CF run time, the client executable, and the Ice for .NET CF run
+ time in the emulator.
+
+7) In the emulator, choose Start -> Programs and select File Explorer.
+ Click on My Documents and choose My Device. Select Program Files,
+ then select "server".
+
+8) Select "server" to start the program. Click the Start Server button
+ to start the server.
+
+9) Finally in a command window, start the bidir client.
diff --git a/cs/demo/Ice/compact/bidir/server.csproj b/cs/demo/Ice/compact/bidir/server.csproj
new file mode 100644
index 00000000000..3e10dca53f1
--- /dev/null
+++ b/cs/demo/Ice/compact/bidir/server.csproj
@@ -0,0 +1,99 @@
+<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="3.5">
+ <PropertyGroup>
+ <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+ <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+ <ProductVersion>9.0.21022</ProductVersion>
+ <SchemaVersion>2.0</SchemaVersion>
+ <ProjectGuid>{05B11482-32A1-4212-A7F8-2A135FADD164}</ProjectGuid>
+ <OutputType>WinExe</OutputType>
+ <AppDesignerFolder>Properties</AppDesignerFolder>
+ <RootNamespace>server</RootNamespace>
+ <AssemblyName>server</AssemblyName>
+ <ProjectTypeGuids>{4D628B5B-2FBC-4AA6-8C16-197242AEB884};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
+ <PlatformFamilyName>PocketPC</PlatformFamilyName>
+ <PlatformID>4118C335-430C-497f-BE48-11C3316B135E</PlatformID>
+ <OSVersion>5.1</OSVersion>
+ <DeployDirSuffix>server</DeployDirSuffix>
+ <TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
+ <NativePlatformName>Windows Mobile 5.0 Pocket PC SDK</NativePlatformName>
+ <FormFactorID>
+ </FormFactorID>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+ <DebugSymbols>true</DebugSymbols>
+ <DebugType>full</DebugType>
+ <Optimize>false</Optimize>
+ <OutputPath>bin\Debug\</OutputPath>
+ <DefineConstants>TRACE;DEBUG;PocketPC COMPACT</DefineConstants>
+ <NoStdLib>true</NoStdLib>
+ <NoConfig>true</NoConfig>
+ <ErrorReport>prompt</ErrorReport>
+ <FileAlignment>512</FileAlignment>
+ <WarningLevel>4</WarningLevel>
+ <GenerateSerializationAssemblies>Off</GenerateSerializationAssemblies>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+ <DebugType>pdbonly</DebugType>
+ <Optimize>true</Optimize>
+ <OutputPath>bin\Release\</OutputPath>
+ <DefineConstants>TRACE;$(PlatformFamilyName)</DefineConstants>
+ <NoStdLib>true</NoStdLib>
+ <NoConfig>true</NoConfig>
+ <ErrorReport>prompt</ErrorReport>
+ <FileAlignment>512</FileAlignment>
+ <WarningLevel>4</WarningLevel>
+ <GenerateSerializationAssemblies>Off</GenerateSerializationAssemblies>
+ </PropertyGroup>
+ <ItemGroup>
+ <Reference Include="Ice, Version=3.4.2.0, Culture=neutral, PublicKeyToken=cdd571ade22f2f16, processorArchitecture=MSIL" />
+ <Reference Include="mscorlib" />
+ <Reference Include="System" />
+ <Reference Include="System.Core" />
+ <Reference Include="System.Xml.Linq" />
+ <Reference Include="System.Data.DataSetExtensions" />
+ <Reference Include="System.Data" />
+ <Reference Include="System.Drawing" />
+ <Reference Include="System.Windows.Forms" />
+ <Reference Include="System.Xml" />
+ </ItemGroup>
+ <ItemGroup>
+ <Compile Include="Callback.cs" />
+ <Compile Include="CallbackSenderI.cs" />
+ <Compile Include="MainForm.cs">
+ <SubType>Form</SubType>
+ </Compile>
+ <Compile Include="MainForm.Designer.cs">
+ <DependentUpon>MainForm.cs</DependentUpon>
+ </Compile>
+ <Compile Include="Program.cs" />
+ <EmbeddedResource Include="MainForm.resx">
+ <DependentUpon>MainForm.cs</DependentUpon>
+ <SubType>Designer</SubType>
+ </EmbeddedResource>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Callback.ice" />
+ </ItemGroup>
+ <ItemGroup>
+ <Content Include="README.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <Folder Include="Properties\" />
+ </ItemGroup>
+ <Import Project="$(MSBuildBinPath)\Microsoft.CompactFramework.CSharp.targets" />
+ <ProjectExtensions>
+ <VisualStudio>
+ <FlavorProperties GUID="{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}">
+ <HostingProcess disable="1" />
+ </FlavorProperties>
+ <UserProperties ZerocIce_Enabled="True" />
+ </VisualStudio>
+ </ProjectExtensions>
+ <!-- To modify your build process, add your task inside one of the targets below and uncomment it.
+ Other similar extension points exist, see Microsoft.Common.targets.
+ <Target Name="BeforeBuild">
+ </Target>
+ <Target Name="AfterBuild">
+ </Target>
+ -->
+</Project> \ No newline at end of file
diff --git a/cs/demo/Ice/compact/Hello.ice b/cs/demo/Ice/compact/hello/Hello.ice
index bb7f6d95924..bb7f6d95924 100644
--- a/cs/demo/Ice/compact/Hello.ice
+++ b/cs/demo/Ice/compact/hello/Hello.ice
diff --git a/cs/demo/Ice/compact/MainForm.Designer.cs b/cs/demo/Ice/compact/hello/MainForm.Designer.cs
index e8e802659e5..e8e802659e5 100644
--- a/cs/demo/Ice/compact/MainForm.Designer.cs
+++ b/cs/demo/Ice/compact/hello/MainForm.Designer.cs
diff --git a/cs/demo/Ice/compact/MainForm.cs b/cs/demo/Ice/compact/hello/MainForm.cs
index 9e990f2c01b..9e990f2c01b 100644
--- a/cs/demo/Ice/compact/MainForm.cs
+++ b/cs/demo/Ice/compact/hello/MainForm.cs
diff --git a/cs/demo/Ice/compact/hello/MainForm.resx b/cs/demo/Ice/compact/hello/MainForm.resx
new file mode 100644
index 00000000000..c9d1ac5082d
--- /dev/null
+++ b/cs/demo/Ice/compact/hello/MainForm.resx
@@ -0,0 +1,129 @@
+<?xml version="1.0" encoding="utf-8"?>
+<root>
+ <!--
+ Microsoft ResX Schema
+
+ Version 2.0
+
+ The primary goals of this format is to allow a simple XML format
+ that is mostly human readable. The generation and parsing of the
+ various data types are done through the TypeConverter classes
+ associated with the data types.
+
+ Example:
+
+ ... ado.net/XML headers & schema ...
+ <resheader name="resmimetype">text/microsoft-resx</resheader>
+ <resheader name="version">2.0</resheader>
+ <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
+ <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
+ <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
+ <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
+ <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
+ <value>[base64 mime encoded serialized .NET Framework object]</value>
+ </data>
+ <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+ <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
+ <comment>This is a comment</comment>
+ </data>
+
+ There are any number of "resheader" rows that contain simple
+ name/value pairs.
+
+ Each data row contains a name, and value. The row also contains a
+ type or mimetype. Type corresponds to a .NET class that support
+ text/value conversion through the TypeConverter architecture.
+ Classes that don't support this are serialized and stored with the
+ mimetype set.
+
+ The mimetype is used for serialized objects, and tells the
+ ResXResourceReader how to depersist the object. This is currently not
+ extensible. For a given mimetype the value must be set accordingly:
+
+ Note - application/x-microsoft.net.object.binary.base64 is the format
+ that the ResXResourceWriter will generate, however the reader can
+ read any of the formats listed below.
+
+ mimetype: application/x-microsoft.net.object.binary.base64
+ value : The object must be serialized with
+ : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
+ : and then encoded with base64 encoding.
+
+ mimetype: application/x-microsoft.net.object.soap.base64
+ value : The object must be serialized with
+ : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
+ : and then encoded with base64 encoding.
+
+ mimetype: application/x-microsoft.net.object.bytearray.base64
+ value : The object must be serialized into a byte array
+ : using a System.ComponentModel.TypeConverter
+ : and then encoded with base64 encoding.
+ -->
+ <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
+ <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
+ <xsd:element name="root" msdata:IsDataSet="true">
+ <xsd:complexType>
+ <xsd:choice maxOccurs="unbounded">
+ <xsd:element name="metadata">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element name="value" type="xsd:string" minOccurs="0" />
+ </xsd:sequence>
+ <xsd:attribute name="name" use="required" type="xsd:string" />
+ <xsd:attribute name="type" type="xsd:string" />
+ <xsd:attribute name="mimetype" type="xsd:string" />
+ <xsd:attribute ref="xml:space" />
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="assembly">
+ <xsd:complexType>
+ <xsd:attribute name="alias" type="xsd:string" />
+ <xsd:attribute name="name" type="xsd:string" />
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="data">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+ <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
+ </xsd:sequence>
+ <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
+ <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
+ <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
+ <xsd:attribute ref="xml:space" />
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="resheader">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+ </xsd:sequence>
+ <xsd:attribute name="name" type="xsd:string" use="required" />
+ </xsd:complexType>
+ </xsd:element>
+ </xsd:choice>
+ </xsd:complexType>
+ </xsd:element>
+ </xsd:schema>
+ <resheader name="resmimetype">
+ <value>text/microsoft-resx</value>
+ </resheader>
+ <resheader name="version">
+ <value>2.0</value>
+ </resheader>
+ <resheader name="reader">
+ <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+ </resheader>
+ <resheader name="writer">
+ <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+ </resheader>
+ <metadata name="mainMenu1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+ <value>17, 17</value>
+ </metadata>
+ <metadata name="$this.FormFactorShadowProperty" xml:space="preserve">
+ <value>Pocket_PC</value>
+ </metadata>
+ <metadata name="$this.Skin" type="System.Boolean, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>True</value>
+ </metadata>
+</root> \ No newline at end of file
diff --git a/cs/demo/Ice/compact/hello/Program.cs b/cs/demo/Ice/compact/hello/Program.cs
new file mode 100644
index 00000000000..29c47e42752
--- /dev/null
+++ b/cs/demo/Ice/compact/hello/Program.cs
@@ -0,0 +1,28 @@
+// **********************************************************************
+//
+// Copyright (c) 2003-2011 ZeroC, Inc. All rights reserved.
+//
+// This copy of Ice is licensed to you under the terms described in the
+// ICE_LICENSE file included in this distribution.
+//
+// **********************************************************************
+
+using System;
+using System.Linq;
+using System.Collections.Generic;
+using System.Windows.Forms;
+
+namespace client
+{
+ static class Program
+ {
+ /// <summary>
+ /// The main entry point for the application.
+ /// </summary>
+ [MTAThread]
+ static void Main()
+ {
+ Application.Run(new MainForm());
+ }
+ }
+} \ No newline at end of file
diff --git a/cs/demo/Ice/compact/README b/cs/demo/Ice/compact/hello/README.txt
index af40ad420dc..71741d446f1 100644
--- a/cs/demo/Ice/compact/README
+++ b/cs/demo/Ice/compact/hello/README.txt
@@ -2,7 +2,7 @@ This demo shows how to write a simple C# client application using Ice
for .NET Compact Framework (CF).
This demo requires a hello server. You can use the C# server located
-in ..\hello, or you can use a server from any other language mapping.
+in ..\..\hello, or you can use a server from any other language mapping.
You must use Visual Studio 2008 to build this client (Visual Studio
2010 does not support Compact Framework development). Follow these
diff --git a/cs/demo/Ice/compact/Ice.compact.client.csproj b/cs/demo/Ice/compact/hello/client.csproj
index d97e53c724d..255657f4b27 100644
--- a/cs/demo/Ice/compact/Ice.compact.client.csproj
+++ b/cs/demo/Ice/compact/hello/client.csproj
@@ -2,7 +2,7 @@
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
- <ProductVersion>9.0.30729</ProductVersion>
+ <ProductVersion>9.0.21022</ProductVersion>
<SchemaVersion>2.0</SchemaVersion>
<ProjectGuid>{95E6B539-E515-4BD4-BDB0-35D7C49C897D}</ProjectGuid>
<OutputType>WinExe</OutputType>
@@ -73,7 +73,9 @@
</ItemGroup>
<ItemGroup>
<None Include="Hello.ice" />
- <None Include="README" />
+ </ItemGroup>
+ <ItemGroup>
+ <Content Include="README.txt" />
</ItemGroup>
<ItemGroup>
<Folder Include="Properties\" />
@@ -84,7 +86,7 @@
<FlavorProperties GUID="{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}">
<HostingProcess disable="1" />
</FlavorProperties>
- <UserProperties ZerocIce_VerboseLevel="1" ZerocIce_Enabled="True" />
+ <UserProperties ZerocIce_Enabled="True" ZerocIce_VerboseLevel="1" />
</VisualStudio>
</ProjectExtensions>
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
@@ -94,4 +96,4 @@
<Target Name="AfterBuild">
</Target>
-->
-</Project>
+</Project> \ No newline at end of file
diff --git a/cs/demo/Ice/sl/bidir/README.txt b/cs/demo/Ice/sl/bidir/README.txt
new file mode 100644
index 00000000000..70f10f9f5f2
--- /dev/null
+++ b/cs/demo/Ice/sl/bidir/README.txt
@@ -0,0 +1,40 @@
+This demo shows how to use bidirectional connections for callbacks.
+This is typically used if the server cannot open a connection to the
+client to send callbacks, for example, because firewalls block
+incoming connections to the client.
+
+1) You can use a server from any Ice language mapping, befofe starting
+ the server, you must edit the server endpoints to use a port in the
+ range allowed by Silverlight.
+
+ Edit the config.server file in the server bidir demo directory and
+ update the property Callback.Server.Endpoints as follow:
+
+ Callback.Server.Endpoints=tcp -p 4502
+
+2) Start the bidir server following the instructions in the demo
+ README file.
+
+3) In a command window, start the policy server.
+
+ > cd <Ice installation directory>\bin
+ > policyserver 127.0.0.1 ..\config\PolicyResponse.xml
+
+4) From Visual Studio open the `bidir.Web' and start the bidir
+ Silverlight application using the "Debug > Start new instance"
+ command.
+
+==========================================================================
+Running the demo with .NET Compact Framework bidir server
+==========================================================================
+
+1) Start the bidir server following the instructions in the
+ demo\Ice\compact\bidir\README.txt file, before clicking the `Start
+ Server' button update the port field to 4502
+
+2) In the bidir demo "Properties > Debug" select Out-of-browser
+ application, and in the combo box select bidir.
+
+3) Start the bidir client using the "Debug > Start new instance"
+ command, set the host field to the ip address used by the emulator,
+ and click Run.
diff --git a/cs/demo/Ice/sl/bidir/bidir.Web/Properties/AssemblyInfo.cs b/cs/demo/Ice/sl/bidir/bidir.Web/Properties/AssemblyInfo.cs
new file mode 100644
index 00000000000..efbd66fd1b0
--- /dev/null
+++ b/cs/demo/Ice/sl/bidir/bidir.Web/Properties/AssemblyInfo.cs
@@ -0,0 +1,35 @@
+using System.Reflection;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+// General Information about an assembly is controlled through the following
+// set of attributes. Change these attribute values to modify the information
+// associated with an assembly.
+[assembly: AssemblyTitle("bidir.Web")]
+[assembly: AssemblyDescription("")]
+[assembly: AssemblyConfiguration("")]
+[assembly: AssemblyCompany("ZeroC")]
+[assembly: AssemblyProduct("bidir.Web")]
+[assembly: AssemblyCopyright("Copyright © ZeroC 2012")]
+[assembly: AssemblyTrademark("")]
+[assembly: AssemblyCulture("")]
+
+// Setting ComVisible to false makes the types in this assembly not visible
+// to COM components. If you need to access a type in this assembly from
+// COM, set the ComVisible attribute to true on that type.
+[assembly: ComVisible(false)]
+
+// The following GUID is for the ID of the typelib if this project is exposed to COM
+[assembly: Guid("4103934e-4e04-41e4-887a-5fc00f302aea")]
+
+// Version information for an assembly consists of the following four values:
+//
+// Major Version
+// Minor Version
+// Build Number
+// Revision
+//
+// You can specify all the values or you can default the Revision and Build Numbers
+// by using the '*' as shown below:
+[assembly: AssemblyVersion("1.0.0.0")]
+[assembly: AssemblyFileVersion("1.0.0.0")]
diff --git a/cs/demo/Ice/sl/bidir/bidir.Web/Silverlight.js b/cs/demo/Ice/sl/bidir/bidir.Web/Silverlight.js
new file mode 100644
index 00000000000..15e04097676
--- /dev/null
+++ b/cs/demo/Ice/sl/bidir/bidir.Web/Silverlight.js
@@ -0,0 +1,2 @@
+//v2.0.30511.0
+if(!window.Silverlight)window.Silverlight={};Silverlight._silverlightCount=0;Silverlight.__onSilverlightInstalledCalled=false;Silverlight.fwlinkRoot="http://go2.microsoft.com/fwlink/?LinkID=";Silverlight.__installationEventFired=false;Silverlight.onGetSilverlight=null;Silverlight.onSilverlightInstalled=function(){window.location.reload(false)};Silverlight.isInstalled=function(b){if(b==undefined)b=null;var a=false,m=null;try{var i=null,j=false;if(window.ActiveXObject)try{i=new ActiveXObject("AgControl.AgControl");if(b===null)a=true;else if(i.IsVersionSupported(b))a=true;i=null}catch(l){j=true}else j=true;if(j){var k=navigator.plugins["Silverlight Plug-In"];if(k)if(b===null)a=true;else{var h=k.description;if(h==="1.0.30226.2")h="2.0.30226.2";var c=h.split(".");while(c.length>3)c.pop();while(c.length<4)c.push(0);var e=b.split(".");while(e.length>4)e.pop();var d,g,f=0;do{d=parseInt(e[f]);g=parseInt(c[f]);f++}while(f<e.length&&d===g);if(d<=g&&!isNaN(d))a=true}}}catch(l){a=false}return a};Silverlight.WaitForInstallCompletion=function(){if(!Silverlight.isBrowserRestartRequired&&Silverlight.onSilverlightInstalled){try{navigator.plugins.refresh()}catch(a){}if(Silverlight.isInstalled(null)&&!Silverlight.__onSilverlightInstalledCalled){Silverlight.onSilverlightInstalled();Silverlight.__onSilverlightInstalledCalled=true}else setTimeout(Silverlight.WaitForInstallCompletion,3e3)}};Silverlight.__startup=function(){navigator.plugins.refresh();Silverlight.isBrowserRestartRequired=Silverlight.isInstalled(null);if(!Silverlight.isBrowserRestartRequired){Silverlight.WaitForInstallCompletion();if(!Silverlight.__installationEventFired){Silverlight.onInstallRequired();Silverlight.__installationEventFired=true}}else if(window.navigator.mimeTypes){var b=navigator.mimeTypes["application/x-silverlight-2"],c=navigator.mimeTypes["application/x-silverlight-2-b2"],d=navigator.mimeTypes["application/x-silverlight-2-b1"],a=d;if(c)a=c;if(!b&&(d||c)){if(!Silverlight.__installationEventFired){Silverlight.onUpgradeRequired();Silverlight.__installationEventFired=true}}else if(b&&a)if(b.enabledPlugin&&a.enabledPlugin)if(b.enabledPlugin.description!=a.enabledPlugin.description)if(!Silverlight.__installationEventFired){Silverlight.onRestartRequired();Silverlight.__installationEventFired=true}}if(!Silverlight.disableAutoStartup)if(window.removeEventListener)window.removeEventListener("load",Silverlight.__startup,false);else window.detachEvent("onload",Silverlight.__startup)};if(!Silverlight.disableAutoStartup)if(window.addEventListener)window.addEventListener("load",Silverlight.__startup,false);else window.attachEvent("onload",Silverlight.__startup);Silverlight.createObject=function(m,f,e,k,l,h,j){var d={},a=k,c=l;d.version=a.version;a.source=m;d.alt=a.alt;if(h)a.initParams=h;if(a.isWindowless&&!a.windowless)a.windowless=a.isWindowless;if(a.framerate&&!a.maxFramerate)a.maxFramerate=a.framerate;if(e&&!a.id)a.id=e;delete a.ignoreBrowserVer;delete a.inplaceInstallPrompt;delete a.version;delete a.isWindowless;delete a.framerate;delete a.data;delete a.src;delete a.alt;if(Silverlight.isInstalled(d.version)){for(var b in c)if(c[b]){if(b=="onLoad"&&typeof c[b]=="function"&&c[b].length!=1){var i=c[b];c[b]=function(a){return i(document.getElementById(e),j,a)}}var g=Silverlight.__getHandlerName(c[b]);if(g!=null){a[b]=g;c[b]=null}else throw"typeof events."+b+" must be 'function' or 'string'";}slPluginHTML=Silverlight.buildHTML(a)}else slPluginHTML=Silverlight.buildPromptHTML(d);if(f)f.innerHTML=slPluginHTML;else return slPluginHTML};Silverlight.buildHTML=function(a){var b=[];b.push('<object type="application/x-silverlight" data="data:application/x-silverlight,"');if(a.id!=null)b.push(' id="'+Silverlight.HtmlAttributeEncode(a.id)+'"');if(a.width!=null)b.push(' width="'+a.width+'"');if(a.height!=null)b.push(' height="'+a.height+'"');b.push(" >");delete a.id;delete a.width;delete a.height;for(var c in a)if(a[c])b.push('<param name="'+Silverlight.HtmlAttributeEncode(c)+'" value="'+Silverlight.HtmlAttributeEncode(a[c])+'" />');b.push("</object>");return b.join("")};Silverlight.createObjectEx=function(b){var a=b,c=Silverlight.createObject(a.source,a.parentElement,a.id,a.properties,a.events,a.initParams,a.context);if(a.parentElement==null)return c};Silverlight.buildPromptHTML=function(b){var a="",d=Silverlight.fwlinkRoot,c=b.version;if(b.alt)a=b.alt;else{if(!c)c="";a="<a href='javascript:Silverlight.getSilverlight(\"{1}\");' style='text-decoration: none;'><img src='{2}' alt='Get Microsoft Silverlight' style='border-style: none'/></a>";a=a.replace("{1}",c);a=a.replace("{2}",d+"108181")}return a};Silverlight.getSilverlight=function(e){if(Silverlight.onGetSilverlight)Silverlight.onGetSilverlight();var b="",a=String(e).split(".");if(a.length>1){var c=parseInt(a[0]);if(isNaN(c)||c<2)b="1.0";else b=a[0]+"."+a[1]}var d="";if(b.match(/^\d+\056\d+$/))d="&v="+b;Silverlight.followFWLink("149156"+d)};Silverlight.followFWLink=function(a){top.location=Silverlight.fwlinkRoot+String(a)};Silverlight.HtmlAttributeEncode=function(c){var a,b="";if(c==null)return null;for(var d=0;d<c.length;d++){a=c.charCodeAt(d);if(a>96&&a<123||a>64&&a<91||a>43&&a<58&&a!=47||a==95)b=b+String.fromCharCode(a);else b=b+"&#"+a+";"}return b};Silverlight.default_error_handler=function(e,b){var d,c=b.ErrorType;d=b.ErrorCode;var a="\nSilverlight error message \n";a+="ErrorCode: "+d+"\n";a+="ErrorType: "+c+" \n";a+="Message: "+b.ErrorMessage+" \n";if(c=="ParserError"){a+="XamlFile: "+b.xamlFile+" \n";a+="Line: "+b.lineNumber+" \n";a+="Position: "+b.charPosition+" \n"}else if(c=="RuntimeError"){if(b.lineNumber!=0){a+="Line: "+b.lineNumber+" \n";a+="Position: "+b.charPosition+" \n"}a+="MethodName: "+b.methodName+" \n"}alert(a)};Silverlight.__cleanup=function(){for(var a=Silverlight._silverlightCount-1;a>=0;a--)window["__slEvent"+a]=null;Silverlight._silverlightCount=0;if(window.removeEventListener)window.removeEventListener("unload",Silverlight.__cleanup,false);else window.detachEvent("onunload",Silverlight.__cleanup)};Silverlight.__getHandlerName=function(b){var a="";if(typeof b=="string")a=b;else if(typeof b=="function"){if(Silverlight._silverlightCount==0)if(window.addEventListener)window.addEventListener("onunload",Silverlight.__cleanup,false);else window.attachEvent("onunload",Silverlight.__cleanup);var c=Silverlight._silverlightCount++;a="__slEvent"+c;window[a]=b}else a=null;return a};Silverlight.onRequiredVersionAvailable=function(){};Silverlight.onRestartRequired=function(){};Silverlight.onUpgradeRequired=function(){};Silverlight.onInstallRequired=function(){};Silverlight.IsVersionAvailableOnError=function(d,a){var b=false;try{if(a.ErrorCode==8001&&!Silverlight.__installationEventFired){Silverlight.onUpgradeRequired();Silverlight.__installationEventFired=true}else if(a.ErrorCode==8002&&!Silverlight.__installationEventFired){Silverlight.onRestartRequired();Silverlight.__installationEventFired=true}else if(a.ErrorCode==5014||a.ErrorCode==2106){if(Silverlight.__verifySilverlight2UpgradeSuccess(a.getHost()))b=true}else b=true}catch(c){}return b};Silverlight.IsVersionAvailableOnLoad=function(b){var a=false;try{if(Silverlight.__verifySilverlight2UpgradeSuccess(b.getHost()))a=true}catch(c){}return a};Silverlight.__verifySilverlight2UpgradeSuccess=function(d){var c=false,b="2.0.31005",a=null;try{if(d.IsVersionSupported(b+".99")){a=Silverlight.onRequiredVersionAvailable;c=true}else if(d.IsVersionSupported(b+".0"))a=Silverlight.onRestartRequired;else a=Silverlight.onUpgradeRequired;if(a&&!Silverlight.__installationEventFired){a();Silverlight.__installationEventFired=true}}catch(e){}return c} \ No newline at end of file
diff --git a/cs/demo/Ice/sl/bidir/bidir.Web/Web.Debug.config b/cs/demo/Ice/sl/bidir/bidir.Web/Web.Debug.config
new file mode 100644
index 00000000000..962e6b73a26
--- /dev/null
+++ b/cs/demo/Ice/sl/bidir/bidir.Web/Web.Debug.config
@@ -0,0 +1,30 @@
+<?xml version="1.0"?>
+
+<!-- For more information on using web.config transformation visit http://go.microsoft.com/fwlink/?LinkId=125889 -->
+
+<configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform">
+ <!--
+ In the example below, the "SetAttributes" transform will change the value of
+ "connectionString" to use "ReleaseSQLServer" only when the "Match" locator
+ finds an atrribute "name" that has a value of "MyDB".
+
+ <connectionStrings>
+ <add name="MyDB"
+ connectionString="Data Source=ReleaseSQLServer;Initial Catalog=MyReleaseDB;Integrated Security=True"
+ xdt:Transform="SetAttributes" xdt:Locator="Match(name)"/>
+ </connectionStrings>
+ -->
+ <system.web>
+ <!--
+ In the example below, the "Replace" transform will replace the entire
+ <customErrors> section of your web.config file.
+ Note that because there is only one customErrors section under the
+ <system.web> node, there is no need to use the "xdt:Locator" attribute.
+
+ <customErrors defaultRedirect="GenericError.htm"
+ mode="RemoteOnly" xdt:Transform="Replace">
+ <error statusCode="500" redirect="InternalError.htm"/>
+ </customErrors>
+ -->
+ </system.web>
+</configuration> \ No newline at end of file
diff --git a/cs/demo/Ice/sl/bidir/bidir.Web/Web.Release.config b/cs/demo/Ice/sl/bidir/bidir.Web/Web.Release.config
new file mode 100644
index 00000000000..141832ba77e
--- /dev/null
+++ b/cs/demo/Ice/sl/bidir/bidir.Web/Web.Release.config
@@ -0,0 +1,31 @@
+<?xml version="1.0"?>
+
+<!-- For more information on using web.config transformation visit http://go.microsoft.com/fwlink/?LinkId=125889 -->
+
+<configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform">
+ <!--
+ In the example below, the "SetAttributes" transform will change the value of
+ "connectionString" to use "ReleaseSQLServer" only when the "Match" locator
+ finds an atrribute "name" that has a value of "MyDB".
+
+ <connectionStrings>
+ <add name="MyDB"
+ connectionString="Data Source=ReleaseSQLServer;Initial Catalog=MyReleaseDB;Integrated Security=True"
+ xdt:Transform="SetAttributes" xdt:Locator="Match(name)"/>
+ </connectionStrings>
+ -->
+ <system.web>
+ <compilation xdt:Transform="RemoveAttributes(debug)" />
+ <!--
+ In the example below, the "Replace" transform will replace the entire
+ <customErrors> section of your web.config file.
+ Note that because there is only one customErrors section under the
+ <system.web> node, there is no need to use the "xdt:Locator" attribute.
+
+ <customErrors defaultRedirect="GenericError.htm"
+ mode="RemoteOnly" xdt:Transform="Replace">
+ <error statusCode="500" redirect="InternalError.htm"/>
+ </customErrors>
+ -->
+ </system.web>
+</configuration> \ No newline at end of file
diff --git a/cs/demo/Ice/sl/bidir/bidir.Web/Web.config b/cs/demo/Ice/sl/bidir/bidir.Web/Web.config
new file mode 100644
index 00000000000..0598be112f3
--- /dev/null
+++ b/cs/demo/Ice/sl/bidir/bidir.Web/Web.config
@@ -0,0 +1,13 @@
+<?xml version="1.0"?>
+
+<!--
+ For more information on how to configure your ASP.NET application, please visit
+ http://go.microsoft.com/fwlink/?LinkId=169433
+ -->
+
+<configuration>
+ <system.web>
+ <compilation debug="true" targetFramework="4.0" />
+ </system.web>
+
+</configuration>
diff --git a/cs/demo/Ice/sl/bidir/bidir.Web/bidir.Web.csproj b/cs/demo/Ice/sl/bidir/bidir.Web/bidir.Web.csproj
new file mode 100644
index 00000000000..ac79f2dc89c
--- /dev/null
+++ b/cs/demo/Ice/sl/bidir/bidir.Web/bidir.Web.csproj
@@ -0,0 +1,99 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup>
+ <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+ <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+ <ProductVersion>
+ </ProductVersion>
+ <SchemaVersion>2.0</SchemaVersion>
+ <ProjectGuid>{0F089AE9-9F65-4C33-9F1F-183C6AC6E043}</ProjectGuid>
+ <ProjectTypeGuids>{349c5851-65df-11da-9384-00065b846f21};{fae04ec0-301f-11d3-bf4b-00c04f79efbc}</ProjectTypeGuids>
+ <OutputType>Library</OutputType>
+ <AppDesignerFolder>Properties</AppDesignerFolder>
+ <RootNamespace>bidir.Web</RootNamespace>
+ <AssemblyName>bidir.Web</AssemblyName>
+ <TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
+ <UseIISExpress>false</UseIISExpress>
+ <SilverlightApplicationList>{73FE67BB-A2C1-464A-8F84-7B1282288CBA}|..\bidir\bidir.csproj|ClientBin|False</SilverlightApplicationList>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+ <DebugSymbols>true</DebugSymbols>
+ <DebugType>full</DebugType>
+ <Optimize>false</Optimize>
+ <OutputPath>bin\</OutputPath>
+ <DefineConstants>DEBUG;TRACE</DefineConstants>
+ <ErrorReport>prompt</ErrorReport>
+ <WarningLevel>4</WarningLevel>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+ <DebugType>pdbonly</DebugType>
+ <Optimize>true</Optimize>
+ <OutputPath>bin\</OutputPath>
+ <DefineConstants>TRACE</DefineConstants>
+ <ErrorReport>prompt</ErrorReport>
+ <WarningLevel>4</WarningLevel>
+ </PropertyGroup>
+ <ItemGroup>
+ <Reference Include="Microsoft.CSharp" />
+ <Reference Include="System.Web.DynamicData" />
+ <Reference Include="System.Web.Entity" />
+ <Reference Include="System.Web.ApplicationServices" />
+ <Reference Include="System" />
+ <Reference Include="System.Data" />
+ <Reference Include="System.Core" />
+ <Reference Include="System.Data.DataSetExtensions" />
+ <Reference Include="System.Web.Extensions" />
+ <Reference Include="System.Xml.Linq" />
+ <Reference Include="System.Drawing" />
+ <Reference Include="System.Web" />
+ <Reference Include="System.Xml" />
+ <Reference Include="System.Configuration" />
+ <Reference Include="System.Web.Services" />
+ <Reference Include="System.EnterpriseServices" />
+ </ItemGroup>
+ <ItemGroup>
+ <Content Include="bidirTestPage.aspx" />
+ <Content Include="bidirTestPage.html" />
+ <Content Include="ClientBin\bidir.xap" />
+ <Content Include="Silverlight.js" />
+ <Content Include="Web.config" />
+ <Content Include="Web.Debug.config">
+ <DependentUpon>Web.config</DependentUpon>
+ </Content>
+ <Content Include="Web.Release.config">
+ <DependentUpon>Web.config</DependentUpon>
+ </Content>
+ </ItemGroup>
+ <ItemGroup>
+ <Compile Include="Properties\AssemblyInfo.cs" />
+ </ItemGroup>
+ <ItemGroup />
+ <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
+ <Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v10.0\WebApplications\Microsoft.WebApplication.targets" />
+ <ProjectExtensions>
+ <VisualStudio>
+ <FlavorProperties GUID="{349c5851-65df-11da-9384-00065b846f21}">
+ <WebProjectProperties>
+ <UseIIS>False</UseIIS>
+ <AutoAssignPort>True</AutoAssignPort>
+ <DevelopmentServerPort>49183</DevelopmentServerPort>
+ <DevelopmentServerVPath>/</DevelopmentServerVPath>
+ <IISUrl>
+ </IISUrl>
+ <NTLMAuthentication>False</NTLMAuthentication>
+ <UseCustomServer>False</UseCustomServer>
+ <CustomServerUrl>
+ </CustomServerUrl>
+ <SaveServerSettingsInUserFile>False</SaveServerSettingsInUserFile>
+ </WebProjectProperties>
+ </FlavorProperties>
+ </VisualStudio>
+ </ProjectExtensions>
+ <!-- To modify your build process, add your task inside one of the targets below and uncomment it.
+ Other similar extension points exist, see Microsoft.Common.targets.
+ <Target Name="BeforeBuild">
+ </Target>
+ <Target Name="AfterBuild">
+ </Target>
+ -->
+</Project> \ No newline at end of file
diff --git a/cs/demo/Ice/sl/bidir/bidir.Web/bidirTestPage.aspx b/cs/demo/Ice/sl/bidir/bidir.Web/bidirTestPage.aspx
new file mode 100644
index 00000000000..254083260d4
--- /dev/null
+++ b/cs/demo/Ice/sl/bidir/bidir.Web/bidirTestPage.aspx
@@ -0,0 +1,74 @@
+<%@ Page Language="C#" AutoEventWireup="true" %>
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" >
+<head runat="server">
+ <title>bidir</title>
+ <style type="text/css">
+ html, body {
+ height: 100%;
+ overflow: auto;
+ }
+ body {
+ padding: 0;
+ margin: 0;
+ }
+ #silverlightControlHost {
+ height: 100%;
+ text-align:center;
+ }
+ </style>
+ <script type="text/javascript" src="Silverlight.js"></script>
+ <script type="text/javascript">
+ function onSilverlightError(sender, args) {
+ var appSource = "";
+ if (sender != null && sender != 0) {
+ appSource = sender.getHost().Source;
+ }
+
+ var errorType = args.ErrorType;
+ var iErrorCode = args.ErrorCode;
+
+ if (errorType == "ImageError" || errorType == "MediaError") {
+ return;
+ }
+
+ var errMsg = "Unhandled Error in Silverlight Application " + appSource + "\n" ;
+
+ errMsg += "Code: "+ iErrorCode + " \n";
+ errMsg += "Category: " + errorType + " \n";
+ errMsg += "Message: " + args.ErrorMessage + " \n";
+
+ if (errorType == "ParserError") {
+ errMsg += "File: " + args.xamlFile + " \n";
+ errMsg += "Line: " + args.lineNumber + " \n";
+ errMsg += "Position: " + args.charPosition + " \n";
+ }
+ else if (errorType == "RuntimeError") {
+ if (args.lineNumber != 0) {
+ errMsg += "Line: " + args.lineNumber + " \n";
+ errMsg += "Position: " + args.charPosition + " \n";
+ }
+ errMsg += "MethodName: " + args.methodName + " \n";
+ }
+
+ throw new Error(errMsg);
+ }
+ </script>
+</head>
+<body>
+ <form id="form1" runat="server" style="height:100%">
+ <div id="silverlightControlHost">
+ <object data="data:application/x-silverlight-2," type="application/x-silverlight-2" width="100%" height="100%">
+ <param name="source" value="ClientBin/bidir.xap"/>
+ <param name="onError" value="onSilverlightError" />
+ <param name="background" value="white" />
+ <param name="minRuntimeVersion" value="5.0.61118.0" />
+ <param name="autoUpgrade" value="true" />
+ <a href="http://go.microsoft.com/fwlink/?LinkID=149156&v=5.0.61118.0" style="text-decoration:none">
+ <img src="http://go.microsoft.com/fwlink/?LinkId=161376" alt="Get Microsoft Silverlight" style="border-style:none"/>
+ </a>
+ </object><iframe id="_sl_historyFrame" style="visibility:hidden;height:0px;width:0px;border:0px"></iframe></div>
+ </form>
+</body>
+</html>
diff --git a/cs/demo/Ice/sl/bidir/bidir.Web/bidirTestPage.html b/cs/demo/Ice/sl/bidir/bidir.Web/bidirTestPage.html
new file mode 100644
index 00000000000..8eecd7e7a94
--- /dev/null
+++ b/cs/demo/Ice/sl/bidir/bidir.Web/bidirTestPage.html
@@ -0,0 +1,73 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" >
+
+<head>
+ <title>bidir</title>
+ <style type="text/css">
+ html, body {
+ height: 100%;
+ overflow: auto;
+ }
+ body {
+ padding: 0;
+ margin: 0;
+ }
+ #silverlightControlHost {
+ height: 100%;
+ text-align:center;
+ }
+ </style>
+ <script type="text/javascript" src="Silverlight.js"></script>
+ <script type="text/javascript">
+ function onSilverlightError(sender, args) {
+ var appSource = "";
+ if (sender != null && sender != 0) {
+ appSource = sender.getHost().Source;
+ }
+
+ var errorType = args.ErrorType;
+ var iErrorCode = args.ErrorCode;
+
+ if (errorType == "ImageError" || errorType == "MediaError") {
+ return;
+ }
+
+ var errMsg = "Unhandled Error in Silverlight Application " + appSource + "\n" ;
+
+ errMsg += "Code: "+ iErrorCode + " \n";
+ errMsg += "Category: " + errorType + " \n";
+ errMsg += "Message: " + args.ErrorMessage + " \n";
+
+ if (errorType == "ParserError") {
+ errMsg += "File: " + args.xamlFile + " \n";
+ errMsg += "Line: " + args.lineNumber + " \n";
+ errMsg += "Position: " + args.charPosition + " \n";
+ }
+ else if (errorType == "RuntimeError") {
+ if (args.lineNumber != 0) {
+ errMsg += "Line: " + args.lineNumber + " \n";
+ errMsg += "Position: " + args.charPosition + " \n";
+ }
+ errMsg += "MethodName: " + args.methodName + " \n";
+ }
+
+ throw new Error(errMsg);
+ }
+ </script>
+</head>
+<body>
+ <form id="form1" runat="server" style="height:100%">
+ <div id="silverlightControlHost">
+ <object data="data:application/x-silverlight-2," type="application/x-silverlight-2" width="100%" height="100%">
+ <param name="source" value="ClientBin/bidir.xap"/>
+ <param name="onError" value="onSilverlightError" />
+ <param name="background" value="white" />
+ <param name="minRuntimeVersion" value="5.0.61118.0" />
+ <param name="autoUpgrade" value="true" />
+ <a href="http://go.microsoft.com/fwlink/?LinkID=149156&v=5.0.61118.0" style="text-decoration:none">
+ <img src="http://go.microsoft.com/fwlink/?LinkId=161376" alt="Get Microsoft Silverlight" style="border-style:none"/>
+ </a>
+ </object><iframe id="_sl_historyFrame" style="visibility:hidden;height:0px;width:0px;border:0px"></iframe></div>
+ </form>
+</body>
+</html>
diff --git a/cs/demo/Ice/sl/bidir/bidir/.gitignore b/cs/demo/Ice/sl/bidir/bidir/.gitignore
new file mode 100644
index 00000000000..33d778217a5
--- /dev/null
+++ b/cs/demo/Ice/sl/bidir/bidir/.gitignore
@@ -0,0 +1,3 @@
+# Dummy file, so that git retains this otherwise empty directory.
+Callback.cs
+Bin/*
diff --git a/cs/demo/Ice/sl/bidir/bidir/App.xaml b/cs/demo/Ice/sl/bidir/bidir/App.xaml
new file mode 100644
index 00000000000..c6b2efe457f
--- /dev/null
+++ b/cs/demo/Ice/sl/bidir/bidir/App.xaml
@@ -0,0 +1,8 @@
+<Application xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
+ xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
+ x:Class="bidir.App"
+ >
+ <Application.Resources>
+
+ </Application.Resources>
+</Application>
diff --git a/cs/demo/Ice/sl/bidir/bidir/App.xaml.cs b/cs/demo/Ice/sl/bidir/bidir/App.xaml.cs
new file mode 100644
index 00000000000..0b29c25a123
--- /dev/null
+++ b/cs/demo/Ice/sl/bidir/bidir/App.xaml.cs
@@ -0,0 +1,77 @@
+// **********************************************************************
+//
+// Copyright (c) 2003-2011 ZeroC, Inc. All rights reserved.
+//
+// This copy of Ice is licensed to you under the terms described in the
+// ICE_LICENSE file included in this distribution.
+//
+// **********************************************************************
+
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Net;
+using System.Windows;
+using System.Windows.Controls;
+using System.Windows.Documents;
+using System.Windows.Input;
+using System.Windows.Media;
+using System.Windows.Media.Animation;
+using System.Windows.Shapes;
+
+namespace bidir
+{
+ public partial class App : Application
+ {
+
+ public App()
+ {
+ this.Startup += this.Application_Startup;
+ this.Exit += this.Application_Exit;
+ this.UnhandledException += this.Application_UnhandledException;
+
+ InitializeComponent();
+ }
+
+ private void Application_Startup(object sender, StartupEventArgs e)
+ {
+ this.RootVisual = new MainPage();
+ }
+
+ private void Application_Exit(object sender, EventArgs e)
+ {
+
+ }
+
+ private void Application_UnhandledException(object sender, ApplicationUnhandledExceptionEventArgs e)
+ {
+ // If the app is running outside of the debugger then report the exception using
+ // the browser's exception mechanism. On IE this will display it a yellow alert
+ // icon in the status bar and Firefox will display a script error.
+ if (!System.Diagnostics.Debugger.IsAttached)
+ {
+
+ // NOTE: This will allow the application to continue running after an exception has been thrown
+ // but not handled.
+ // For production applications this error handling should be replaced with something that will
+ // report the error to the website and stop the application.
+ e.Handled = true;
+ Deployment.Current.Dispatcher.BeginInvoke(delegate { ReportErrorToDOM(e); });
+ }
+ }
+
+ private void ReportErrorToDOM(ApplicationUnhandledExceptionEventArgs e)
+ {
+ try
+ {
+ string errorMsg = e.ExceptionObject.Message + e.ExceptionObject.StackTrace;
+ errorMsg = errorMsg.Replace('"', '\'').Replace("\r\n", @"\n");
+
+ System.Windows.Browser.HtmlPage.Window.Eval("throw new Error(\"Unhandled Error in Silverlight Application " + errorMsg + "\");");
+ }
+ catch (Exception)
+ {
+ }
+ }
+ }
+}
diff --git a/cs/demo/Ice/sl/bidir/bidir/Callback.ice b/cs/demo/Ice/sl/bidir/bidir/Callback.ice
new file mode 100644
index 00000000000..73749b8ac28
--- /dev/null
+++ b/cs/demo/Ice/sl/bidir/bidir/Callback.ice
@@ -0,0 +1,27 @@
+// **********************************************************************
+//
+// Copyright (c) 2003-2011 ZeroC, Inc. All rights reserved.
+//
+// This copy of Ice is licensed to you under the terms described in the
+// ICE_LICENSE file included in this distribution.
+//
+// **********************************************************************
+
+#pragma once
+
+#include <Ice/Identity.ice>
+
+module Demo
+{
+
+interface CallbackReceiver
+{
+ void callback(int num);
+};
+
+interface CallbackSender
+{
+ void addClient(Ice::Identity ident);
+};
+
+};
diff --git a/cs/demo/Ice/sl/bidir/bidir/CallbackReceiverI.cs b/cs/demo/Ice/sl/bidir/bidir/CallbackReceiverI.cs
new file mode 100644
index 00000000000..f1344304c47
--- /dev/null
+++ b/cs/demo/Ice/sl/bidir/bidir/CallbackReceiverI.cs
@@ -0,0 +1,38 @@
+// **********************************************************************
+//
+// Copyright (c) 2003-2011 ZeroC, Inc. All rights reserved.
+//
+// This copy of Ice is licensed to you under the terms described in the
+// ICE_LICENSE file included in this distribution.
+//
+// **********************************************************************
+
+using System;
+using System.Net;
+using System.Windows;
+using System.Windows.Controls;
+using System.Windows.Documents;
+using System.Windows.Ink;
+using System.Windows.Input;
+using System.Windows.Media;
+using System.Windows.Media.Animation;
+using System.Windows.Shapes;
+using Demo;
+
+namespace bidir
+{
+ public class CallbackReceiverI : CallbackReceiverDisp_
+ {
+ public CallbackReceiverI(MainPage page)
+ {
+ _page = page;
+ }
+
+ public override void callback(int num, Ice.Current current)
+ {
+ _page.appendText("received callback #" + num.ToString() + Environment.NewLine);
+ }
+
+ private MainPage _page;
+ }
+}
diff --git a/cs/demo/Ice/sl/bidir/bidir/MainPage.xaml b/cs/demo/Ice/sl/bidir/bidir/MainPage.xaml
new file mode 100644
index 00000000000..2c82f736ce1
--- /dev/null
+++ b/cs/demo/Ice/sl/bidir/bidir/MainPage.xaml
@@ -0,0 +1,30 @@
+<UserControl x:Class="bidir.MainPage"
+ xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
+ xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
+ xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
+ xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
+ mc:Ignorable="d"
+ d:DesignHeight="300" d:DesignWidth="400">
+
+ <StackPanel Margin="10, 10, 10, 10" HorizontalAlignment="Center">
+ <StackPanel Orientation="Horizontal" VerticalAlignment="Center"
+ Margin="5, 5, 5, 5">
+ <TextBlock Text="Host:" Height="25" Width="80" VerticalAlignment="Center"/>
+ <TextBox x:Name="txtHost" HorizontalAlignment="Left"
+ Text="localhost"
+ TextWrapping="NoWrap"
+ VerticalAlignment="Top" Height="25" Width="320"/>
+ </StackPanel>
+ <Grid Margin="5, 5, 5, 5">
+ <TextBox x:Name="txtOutput"
+ FontSize="12" Text="" TextWrapping="Wrap" IsEnabled="True" Height="120"
+ Width="400" HorizontalScrollBarVisibility="Hidden"
+ VerticalScrollBarVisibility="Visible" IsReadOnly="True"/>
+ </Grid>
+ <StackPanel Orientation="Horizontal" VerticalAlignment="Center"
+ Margin="5, 5, 5, 5">
+ <Button Name="btnRun" Content="Run" Click="btnRunClick"/>
+ <Button Name="btnStop" Content="Stop" Margin="5, 0, 0, 0" Click="btnStopClick"/>
+ </StackPanel>
+ </StackPanel>
+</UserControl>
diff --git a/cs/demo/Ice/sl/bidir/bidir/MainPage.xaml.cs b/cs/demo/Ice/sl/bidir/bidir/MainPage.xaml.cs
new file mode 100644
index 00000000000..1bff6219a38
--- /dev/null
+++ b/cs/demo/Ice/sl/bidir/bidir/MainPage.xaml.cs
@@ -0,0 +1,138 @@
+// **********************************************************************
+//
+// Copyright (c) 2003-2011 ZeroC, Inc. All rights reserved.
+//
+// This copy of Ice is licensed to you under the terms described in the
+// ICE_LICENSE file included in this distribution.
+//
+// **********************************************************************
+
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Net;
+using System.Windows;
+using System.Windows.Controls;
+using System.Windows.Documents;
+using System.Windows.Input;
+using System.Windows.Media;
+using System.Windows.Media.Animation;
+using System.Windows.Shapes;
+using Demo;
+
+namespace bidir
+{
+ public partial class MainPage : UserControl
+ {
+ public MainPage()
+ {
+ InitializeComponent();
+ }
+
+ private void btnRunClick(object sender, RoutedEventArgs e)
+ {
+ string host = txtHost.Text;
+ txtOutput.Text = "";
+ btnRun.IsEnabled = false;
+ btnStop.IsEnabled = true;
+
+ Ice.InitializationData initData = new Ice.InitializationData();
+ initData.dispatcher = delegate(System.Action action, Ice.Connection connection)
+ {
+ Dispatcher.BeginInvoke(action);
+ };
+ _communicator = Ice.Util.initialize(initData);
+
+ CallbackSenderPrx server = CallbackSenderPrxHelper.uncheckedCast(
+ _communicator.stringToProxy("sender:tcp -h " + host + " -p 4502"));
+ if(server == null)
+ {
+ throw new ArgumentException("invalid proxy");
+ }
+
+ Ice.ObjectAdapter adapter = _communicator.createObjectAdapter("");
+ Ice.Identity ident = new Ice.Identity();
+ ident.name = Guid.NewGuid().ToString();
+ ident.category = "";
+ adapter.add(new CallbackReceiverI(this), ident);
+ adapter.activate();
+
+ //
+ // Establish the connection to the server by sending a ping request with AMI.
+ //
+ server.begin_ice_ping().whenCompleted(
+ () =>
+ {
+ //
+ // Associate the object adapter to the connection to receive requests
+ // over the bi-directional connection.
+ //
+ server.ice_getCachedConnection().setAdapter(adapter);
+
+ //
+ // Notify the server that we are ready to receive callbacks.
+ //
+ server.begin_addClient(ident).whenCompleted(
+ () =>
+ {
+ // Nothing to do.
+ },
+ (Ice.Exception ex) =>
+ {
+ appendText(ex.ToString());
+ });
+ },
+ (Ice.Exception ex) =>
+ {
+ appendText(ex.ToString());
+ });
+ }
+
+ private void btnStopClick(object sender, RoutedEventArgs e)
+ {
+ btnRun.IsEnabled = false;
+ btnStop.IsEnabled = false;
+
+ System.Threading.Thread t = new System.Threading.Thread(() =>
+ {
+ try
+ {
+ if (_communicator != null)
+ {
+ _communicator.destroy();
+ _communicator.waitForShutdown();
+ }
+ }
+ catch (Ice.CommunicatorDestroyedException)
+ {
+ }
+ catch (System.Exception ex)
+ {
+ Dispatcher.BeginInvoke(() =>
+ {
+ appendText(ex.ToString());
+ });
+ }
+ finally
+ {
+ _communicator = null;
+ Dispatcher.BeginInvoke(() =>
+ {
+ btnRun.IsEnabled = true;
+ btnStop.IsEnabled = false;
+ });
+ }
+ });
+ t.Start();
+ }
+
+ public void appendText(string text)
+ {
+ txtOutput.Text += text;
+ txtOutput.SelectionLength = 0;
+ txtOutput.SelectionStart = txtOutput.Text.Length;
+ }
+
+ private Ice.Communicator _communicator;
+ }
+}
diff --git a/cs/demo/Ice/sl/bidir/bidir/Properties/AppManifest.xml b/cs/demo/Ice/sl/bidir/bidir/Properties/AppManifest.xml
new file mode 100644
index 00000000000..a9552327529
--- /dev/null
+++ b/cs/demo/Ice/sl/bidir/bidir/Properties/AppManifest.xml
@@ -0,0 +1,6 @@
+<Deployment xmlns="http://schemas.microsoft.com/client/2007/deployment"
+ xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
+>
+ <Deployment.Parts>
+ </Deployment.Parts>
+</Deployment>
diff --git a/cs/demo/Ice/sl/bidir/bidir/Properties/AssemblyInfo.cs b/cs/demo/Ice/sl/bidir/bidir/Properties/AssemblyInfo.cs
new file mode 100644
index 00000000000..9f6ef51375b
--- /dev/null
+++ b/cs/demo/Ice/sl/bidir/bidir/Properties/AssemblyInfo.cs
@@ -0,0 +1,35 @@
+using System.Reflection;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+// General Information about an assembly is controlled through the following
+// set of attributes. Change these attribute values to modify the information
+// associated with an assembly.
+[assembly: AssemblyTitle("bidir")]
+[assembly: AssemblyDescription("")]
+[assembly: AssemblyConfiguration("")]
+[assembly: AssemblyCompany("ZeroC")]
+[assembly: AssemblyProduct("bidir")]
+[assembly: AssemblyCopyright("Copyright © ZeroC 2012")]
+[assembly: AssemblyTrademark("")]
+[assembly: AssemblyCulture("")]
+
+// Setting ComVisible to false makes the types in this assembly not visible
+// to COM components. If you need to access a type in this assembly from
+// COM, set the ComVisible attribute to true on that type.
+[assembly: ComVisible(false)]
+
+// The following GUID is for the ID of the typelib if this project is exposed to COM
+[assembly: Guid("f2750723-68b2-4743-93ad-319cc69fe014")]
+
+// Version information for an assembly consists of the following four values:
+//
+// Major Version
+// Minor Version
+// Build Number
+// Revision
+//
+// You can specify all the values or you can default the Revision and Build Numbers
+// by using the '*' as shown below:
+[assembly: AssemblyVersion("1.0.0.0")]
+[assembly: AssemblyFileVersion("1.0.0.0")]
diff --git a/cs/demo/Ice/sl/bidir/bidir/Properties/OutOfBrowserSettings.xml b/cs/demo/Ice/sl/bidir/bidir/Properties/OutOfBrowserSettings.xml
new file mode 100644
index 00000000000..17143a20e83
--- /dev/null
+++ b/cs/demo/Ice/sl/bidir/bidir/Properties/OutOfBrowserSettings.xml
@@ -0,0 +1,10 @@
+<OutOfBrowserSettings ShortName="Bidir Demo" EnableGPUAcceleration="False" ShowInstallMenuItem="True">
+ <OutOfBrowserSettings.Blurb>Bidir Demo</OutOfBrowserSettings.Blurb>
+ <OutOfBrowserSettings.WindowSettings>
+ <WindowSettings Title="Bidir Demo" />
+ </OutOfBrowserSettings.WindowSettings>
+ <OutOfBrowserSettings.SecuritySettings>
+ <SecuritySettings ElevatedPermissions="Required" />
+ </OutOfBrowserSettings.SecuritySettings>
+ <OutOfBrowserSettings.Icons />
+</OutOfBrowserSettings> \ No newline at end of file
diff --git a/cs/demo/Ice/sl/bidir/bidir/bidir.csproj b/cs/demo/Ice/sl/bidir/bidir/bidir.csproj
new file mode 100644
index 00000000000..5a5e33a6dd0
--- /dev/null
+++ b/cs/demo/Ice/sl/bidir/bidir/bidir.csproj
@@ -0,0 +1,118 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup>
+ <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+ <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+ <ProductVersion>8.0.50727</ProductVersion>
+ <SchemaVersion>2.0</SchemaVersion>
+ <ProjectGuid>{73FE67BB-A2C1-464A-8F84-7B1282288CBA}</ProjectGuid>
+ <ProjectTypeGuids>{A1591282-1198-4647-A2B1-27E5FF5F6F3B};{fae04ec0-301f-11d3-bf4b-00c04f79efbc}</ProjectTypeGuids>
+ <OutputType>Library</OutputType>
+ <AppDesignerFolder>Properties</AppDesignerFolder>
+ <RootNamespace>bidir</RootNamespace>
+ <AssemblyName>bidir</AssemblyName>
+ <TargetFrameworkIdentifier>Silverlight</TargetFrameworkIdentifier>
+ <TargetFrameworkVersion>v5.0</TargetFrameworkVersion>
+ <SilverlightVersion>$(TargetFrameworkVersion)</SilverlightVersion>
+ <SilverlightApplication>true</SilverlightApplication>
+ <SupportedCultures>
+ </SupportedCultures>
+ <XapOutputs>true</XapOutputs>
+ <GenerateSilverlightManifest>true</GenerateSilverlightManifest>
+ <XapFilename>bidir.xap</XapFilename>
+ <SilverlightManifestTemplate>Properties\AppManifest.xml</SilverlightManifestTemplate>
+ <SilverlightAppEntry>bidir.App</SilverlightAppEntry>
+ <TestPageFileName>bidirTestPage.html</TestPageFileName>
+ <CreateTestPage>true</CreateTestPage>
+ <ValidateXaml>true</ValidateXaml>
+ <EnableOutOfBrowser>true</EnableOutOfBrowser>
+ <OutOfBrowserSettingsFile>Properties\OutOfBrowserSettings.xml</OutOfBrowserSettingsFile>
+ <UsePlatformExtensions>false</UsePlatformExtensions>
+ <ThrowErrorsInValidation>true</ThrowErrorsInValidation>
+ <LinkedServerProject>
+ </LinkedServerProject>
+ </PropertyGroup>
+ <!-- This property group is only here to support building this project using the
+ MSBuild 3.5 toolset. In order to work correctly with this older toolset, it needs
+ to set the TargetFrameworkVersion to v3.5 -->
+ <PropertyGroup Condition="'$(MSBuildToolsVersion)' == '3.5'">
+ <TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+ <DebugSymbols>true</DebugSymbols>
+ <DebugType>full</DebugType>
+ <Optimize>false</Optimize>
+ <OutputPath>Bin\Debug\</OutputPath>
+ <DefineConstants>DEBUG;TRACE;SILVERLIGHT</DefineConstants>
+ <NoStdLib>true</NoStdLib>
+ <NoConfig>true</NoConfig>
+ <ErrorReport>prompt</ErrorReport>
+ <WarningLevel>4</WarningLevel>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+ <DebugType>pdbonly</DebugType>
+ <Optimize>true</Optimize>
+ <OutputPath>Bin\Release\</OutputPath>
+ <DefineConstants>TRACE;SILVERLIGHT</DefineConstants>
+ <NoStdLib>true</NoStdLib>
+ <NoConfig>true</NoConfig>
+ <ErrorReport>prompt</ErrorReport>
+ <WarningLevel>4</WarningLevel>
+ </PropertyGroup>
+ <ItemGroup>
+ <Reference Include="Ice, Version=3.4.2.0, Culture=neutral, PublicKeyToken=1f998c50fec78381, processorArchitecture=MSIL" />
+ <Reference Include="mscorlib" />
+ <Reference Include="System.Windows" />
+ <Reference Include="system" />
+ <Reference Include="System.Core" />
+ <Reference Include="System.Net" />
+ <Reference Include="System.Xml" />
+ <Reference Include="System.Windows.Browser" />
+ </ItemGroup>
+ <ItemGroup>
+ <Compile Include="App.xaml.cs">
+ <DependentUpon>App.xaml</DependentUpon>
+ </Compile>
+ <Compile Include="Callback.cs">
+ <SubType>Code</SubType>
+ </Compile>
+ <Compile Include="CallbackReceiverI.cs" />
+ <Compile Include="MainPage.xaml.cs">
+ <DependentUpon>MainPage.xaml</DependentUpon>
+ </Compile>
+ <Compile Include="Properties\AssemblyInfo.cs" />
+ </ItemGroup>
+ <ItemGroup>
+ <ApplicationDefinition Include="App.xaml">
+ <SubType>Designer</SubType>
+ <Generator>MSBuild:Compile</Generator>
+ </ApplicationDefinition>
+ <Page Include="MainPage.xaml">
+ <SubType>Designer</SubType>
+ <Generator>MSBuild:Compile</Generator>
+ </Page>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Callback.ice" />
+ <None Include="Properties\AppManifest.xml" />
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Properties\OutOfBrowserSettings.xml" />
+ </ItemGroup>
+ <Import Project="$(MSBuildExtensionsPath32)\Microsoft\Silverlight\$(SilverlightVersion)\Microsoft.Silverlight.CSharp.targets" />
+ <!-- To modify your build process, add your task inside one of the targets below and uncomment it.
+ Other similar extension points exist, see Microsoft.Common.targets.
+ <Target Name="BeforeBuild">
+ </Target>
+ <Target Name="AfterBuild">
+ </Target>
+ -->
+ <ProjectExtensions>
+ <VisualStudio>
+ <FlavorProperties GUID="{A1591282-1198-4647-A2B1-27E5FF5F6F3B}">
+ <SilverlightProjectProperties />
+ </FlavorProperties>
+ <UserProperties ZerocIce_Enabled="True" />
+ </VisualStudio>
+ </ProjectExtensions>
+</Project> \ No newline at end of file
diff --git a/cs/demo/Ice/sl/hello/README.txt b/cs/demo/Ice/sl/hello/README.txt
new file mode 100644
index 00000000000..fd0da905f25
--- /dev/null
+++ b/cs/demo/Ice/sl/hello/README.txt
@@ -0,0 +1,23 @@
+This demo illustrates how to invoke ordinary (twoway) operations,
+as well as how to make oneway, and batched invocations.
+
+1) You can use a server from any Ice language mapping, before starting
+ the server, you must edit the server endpoints to use a port in the
+ range allowed by Silverlight.
+
+ Edit the config.server file from the server hello demo directory
+ and update the property Hello.Endpoints as follow:
+
+ Hello.Endpoints=tcp -p 4502
+
+2) start the hello server following the instructions in the demo
+ README file.
+
+3) In a command window, start the policy server.
+
+ > cd <Ice installation directory>\bin
+ > policyserver 127.0.0.1 ..\config\PolicyResponse.xml
+
+4) From Visual Studio open the `hello.Web' project and start the hello
+ Silverlight application using the "Debug > Start new instance"
+ command.
diff --git a/cs/demo/Ice/sl/hello/hello.Web/Properties/AssemblyInfo.cs b/cs/demo/Ice/sl/hello/hello.Web/Properties/AssemblyInfo.cs
new file mode 100644
index 00000000000..45caf87ffcf
--- /dev/null
+++ b/cs/demo/Ice/sl/hello/hello.Web/Properties/AssemblyInfo.cs
@@ -0,0 +1,35 @@
+using System.Reflection;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+// General Information about an assembly is controlled through the following
+// set of attributes. Change these attribute values to modify the information
+// associated with an assembly.
+[assembly: AssemblyTitle("hello.Web")]
+[assembly: AssemblyDescription("")]
+[assembly: AssemblyConfiguration("")]
+[assembly: AssemblyCompany("ZeroC")]
+[assembly: AssemblyProduct("hello.Web")]
+[assembly: AssemblyCopyright("Copyright © ZeroC 2012")]
+[assembly: AssemblyTrademark("")]
+[assembly: AssemblyCulture("")]
+
+// Setting ComVisible to false makes the types in this assembly not visible
+// to COM components. If you need to access a type in this assembly from
+// COM, set the ComVisible attribute to true on that type.
+[assembly: ComVisible(false)]
+
+// The following GUID is for the ID of the typelib if this project is exposed to COM
+[assembly: Guid("95388ccc-9e43-42a4-bc49-c81d0a836c50")]
+
+// Version information for an assembly consists of the following four values:
+//
+// Major Version
+// Minor Version
+// Build Number
+// Revision
+//
+// You can specify all the values or you can default the Revision and Build Numbers
+// by using the '*' as shown below:
+[assembly: AssemblyVersion("1.0.0.0")]
+[assembly: AssemblyFileVersion("1.0.0.0")]
diff --git a/cs/demo/Ice/sl/hello/hello.Web/Silverlight.js b/cs/demo/Ice/sl/hello/hello.Web/Silverlight.js
new file mode 100644
index 00000000000..15e04097676
--- /dev/null
+++ b/cs/demo/Ice/sl/hello/hello.Web/Silverlight.js
@@ -0,0 +1,2 @@
+//v2.0.30511.0
+if(!window.Silverlight)window.Silverlight={};Silverlight._silverlightCount=0;Silverlight.__onSilverlightInstalledCalled=false;Silverlight.fwlinkRoot="http://go2.microsoft.com/fwlink/?LinkID=";Silverlight.__installationEventFired=false;Silverlight.onGetSilverlight=null;Silverlight.onSilverlightInstalled=function(){window.location.reload(false)};Silverlight.isInstalled=function(b){if(b==undefined)b=null;var a=false,m=null;try{var i=null,j=false;if(window.ActiveXObject)try{i=new ActiveXObject("AgControl.AgControl");if(b===null)a=true;else if(i.IsVersionSupported(b))a=true;i=null}catch(l){j=true}else j=true;if(j){var k=navigator.plugins["Silverlight Plug-In"];if(k)if(b===null)a=true;else{var h=k.description;if(h==="1.0.30226.2")h="2.0.30226.2";var c=h.split(".");while(c.length>3)c.pop();while(c.length<4)c.push(0);var e=b.split(".");while(e.length>4)e.pop();var d,g,f=0;do{d=parseInt(e[f]);g=parseInt(c[f]);f++}while(f<e.length&&d===g);if(d<=g&&!isNaN(d))a=true}}}catch(l){a=false}return a};Silverlight.WaitForInstallCompletion=function(){if(!Silverlight.isBrowserRestartRequired&&Silverlight.onSilverlightInstalled){try{navigator.plugins.refresh()}catch(a){}if(Silverlight.isInstalled(null)&&!Silverlight.__onSilverlightInstalledCalled){Silverlight.onSilverlightInstalled();Silverlight.__onSilverlightInstalledCalled=true}else setTimeout(Silverlight.WaitForInstallCompletion,3e3)}};Silverlight.__startup=function(){navigator.plugins.refresh();Silverlight.isBrowserRestartRequired=Silverlight.isInstalled(null);if(!Silverlight.isBrowserRestartRequired){Silverlight.WaitForInstallCompletion();if(!Silverlight.__installationEventFired){Silverlight.onInstallRequired();Silverlight.__installationEventFired=true}}else if(window.navigator.mimeTypes){var b=navigator.mimeTypes["application/x-silverlight-2"],c=navigator.mimeTypes["application/x-silverlight-2-b2"],d=navigator.mimeTypes["application/x-silverlight-2-b1"],a=d;if(c)a=c;if(!b&&(d||c)){if(!Silverlight.__installationEventFired){Silverlight.onUpgradeRequired();Silverlight.__installationEventFired=true}}else if(b&&a)if(b.enabledPlugin&&a.enabledPlugin)if(b.enabledPlugin.description!=a.enabledPlugin.description)if(!Silverlight.__installationEventFired){Silverlight.onRestartRequired();Silverlight.__installationEventFired=true}}if(!Silverlight.disableAutoStartup)if(window.removeEventListener)window.removeEventListener("load",Silverlight.__startup,false);else window.detachEvent("onload",Silverlight.__startup)};if(!Silverlight.disableAutoStartup)if(window.addEventListener)window.addEventListener("load",Silverlight.__startup,false);else window.attachEvent("onload",Silverlight.__startup);Silverlight.createObject=function(m,f,e,k,l,h,j){var d={},a=k,c=l;d.version=a.version;a.source=m;d.alt=a.alt;if(h)a.initParams=h;if(a.isWindowless&&!a.windowless)a.windowless=a.isWindowless;if(a.framerate&&!a.maxFramerate)a.maxFramerate=a.framerate;if(e&&!a.id)a.id=e;delete a.ignoreBrowserVer;delete a.inplaceInstallPrompt;delete a.version;delete a.isWindowless;delete a.framerate;delete a.data;delete a.src;delete a.alt;if(Silverlight.isInstalled(d.version)){for(var b in c)if(c[b]){if(b=="onLoad"&&typeof c[b]=="function"&&c[b].length!=1){var i=c[b];c[b]=function(a){return i(document.getElementById(e),j,a)}}var g=Silverlight.__getHandlerName(c[b]);if(g!=null){a[b]=g;c[b]=null}else throw"typeof events."+b+" must be 'function' or 'string'";}slPluginHTML=Silverlight.buildHTML(a)}else slPluginHTML=Silverlight.buildPromptHTML(d);if(f)f.innerHTML=slPluginHTML;else return slPluginHTML};Silverlight.buildHTML=function(a){var b=[];b.push('<object type="application/x-silverlight" data="data:application/x-silverlight,"');if(a.id!=null)b.push(' id="'+Silverlight.HtmlAttributeEncode(a.id)+'"');if(a.width!=null)b.push(' width="'+a.width+'"');if(a.height!=null)b.push(' height="'+a.height+'"');b.push(" >");delete a.id;delete a.width;delete a.height;for(var c in a)if(a[c])b.push('<param name="'+Silverlight.HtmlAttributeEncode(c)+'" value="'+Silverlight.HtmlAttributeEncode(a[c])+'" />');b.push("</object>");return b.join("")};Silverlight.createObjectEx=function(b){var a=b,c=Silverlight.createObject(a.source,a.parentElement,a.id,a.properties,a.events,a.initParams,a.context);if(a.parentElement==null)return c};Silverlight.buildPromptHTML=function(b){var a="",d=Silverlight.fwlinkRoot,c=b.version;if(b.alt)a=b.alt;else{if(!c)c="";a="<a href='javascript:Silverlight.getSilverlight(\"{1}\");' style='text-decoration: none;'><img src='{2}' alt='Get Microsoft Silverlight' style='border-style: none'/></a>";a=a.replace("{1}",c);a=a.replace("{2}",d+"108181")}return a};Silverlight.getSilverlight=function(e){if(Silverlight.onGetSilverlight)Silverlight.onGetSilverlight();var b="",a=String(e).split(".");if(a.length>1){var c=parseInt(a[0]);if(isNaN(c)||c<2)b="1.0";else b=a[0]+"."+a[1]}var d="";if(b.match(/^\d+\056\d+$/))d="&v="+b;Silverlight.followFWLink("149156"+d)};Silverlight.followFWLink=function(a){top.location=Silverlight.fwlinkRoot+String(a)};Silverlight.HtmlAttributeEncode=function(c){var a,b="";if(c==null)return null;for(var d=0;d<c.length;d++){a=c.charCodeAt(d);if(a>96&&a<123||a>64&&a<91||a>43&&a<58&&a!=47||a==95)b=b+String.fromCharCode(a);else b=b+"&#"+a+";"}return b};Silverlight.default_error_handler=function(e,b){var d,c=b.ErrorType;d=b.ErrorCode;var a="\nSilverlight error message \n";a+="ErrorCode: "+d+"\n";a+="ErrorType: "+c+" \n";a+="Message: "+b.ErrorMessage+" \n";if(c=="ParserError"){a+="XamlFile: "+b.xamlFile+" \n";a+="Line: "+b.lineNumber+" \n";a+="Position: "+b.charPosition+" \n"}else if(c=="RuntimeError"){if(b.lineNumber!=0){a+="Line: "+b.lineNumber+" \n";a+="Position: "+b.charPosition+" \n"}a+="MethodName: "+b.methodName+" \n"}alert(a)};Silverlight.__cleanup=function(){for(var a=Silverlight._silverlightCount-1;a>=0;a--)window["__slEvent"+a]=null;Silverlight._silverlightCount=0;if(window.removeEventListener)window.removeEventListener("unload",Silverlight.__cleanup,false);else window.detachEvent("onunload",Silverlight.__cleanup)};Silverlight.__getHandlerName=function(b){var a="";if(typeof b=="string")a=b;else if(typeof b=="function"){if(Silverlight._silverlightCount==0)if(window.addEventListener)window.addEventListener("onunload",Silverlight.__cleanup,false);else window.attachEvent("onunload",Silverlight.__cleanup);var c=Silverlight._silverlightCount++;a="__slEvent"+c;window[a]=b}else a=null;return a};Silverlight.onRequiredVersionAvailable=function(){};Silverlight.onRestartRequired=function(){};Silverlight.onUpgradeRequired=function(){};Silverlight.onInstallRequired=function(){};Silverlight.IsVersionAvailableOnError=function(d,a){var b=false;try{if(a.ErrorCode==8001&&!Silverlight.__installationEventFired){Silverlight.onUpgradeRequired();Silverlight.__installationEventFired=true}else if(a.ErrorCode==8002&&!Silverlight.__installationEventFired){Silverlight.onRestartRequired();Silverlight.__installationEventFired=true}else if(a.ErrorCode==5014||a.ErrorCode==2106){if(Silverlight.__verifySilverlight2UpgradeSuccess(a.getHost()))b=true}else b=true}catch(c){}return b};Silverlight.IsVersionAvailableOnLoad=function(b){var a=false;try{if(Silverlight.__verifySilverlight2UpgradeSuccess(b.getHost()))a=true}catch(c){}return a};Silverlight.__verifySilverlight2UpgradeSuccess=function(d){var c=false,b="2.0.31005",a=null;try{if(d.IsVersionSupported(b+".99")){a=Silverlight.onRequiredVersionAvailable;c=true}else if(d.IsVersionSupported(b+".0"))a=Silverlight.onRestartRequired;else a=Silverlight.onUpgradeRequired;if(a&&!Silverlight.__installationEventFired){a();Silverlight.__installationEventFired=true}}catch(e){}return c} \ No newline at end of file
diff --git a/cs/demo/Ice/sl/hello/hello.Web/Web.Debug.config b/cs/demo/Ice/sl/hello/hello.Web/Web.Debug.config
new file mode 100644
index 00000000000..962e6b73a26
--- /dev/null
+++ b/cs/demo/Ice/sl/hello/hello.Web/Web.Debug.config
@@ -0,0 +1,30 @@
+<?xml version="1.0"?>
+
+<!-- For more information on using web.config transformation visit http://go.microsoft.com/fwlink/?LinkId=125889 -->
+
+<configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform">
+ <!--
+ In the example below, the "SetAttributes" transform will change the value of
+ "connectionString" to use "ReleaseSQLServer" only when the "Match" locator
+ finds an atrribute "name" that has a value of "MyDB".
+
+ <connectionStrings>
+ <add name="MyDB"
+ connectionString="Data Source=ReleaseSQLServer;Initial Catalog=MyReleaseDB;Integrated Security=True"
+ xdt:Transform="SetAttributes" xdt:Locator="Match(name)"/>
+ </connectionStrings>
+ -->
+ <system.web>
+ <!--
+ In the example below, the "Replace" transform will replace the entire
+ <customErrors> section of your web.config file.
+ Note that because there is only one customErrors section under the
+ <system.web> node, there is no need to use the "xdt:Locator" attribute.
+
+ <customErrors defaultRedirect="GenericError.htm"
+ mode="RemoteOnly" xdt:Transform="Replace">
+ <error statusCode="500" redirect="InternalError.htm"/>
+ </customErrors>
+ -->
+ </system.web>
+</configuration> \ No newline at end of file
diff --git a/cs/demo/Ice/sl/hello/hello.Web/Web.Release.config b/cs/demo/Ice/sl/hello/hello.Web/Web.Release.config
new file mode 100644
index 00000000000..141832ba77e
--- /dev/null
+++ b/cs/demo/Ice/sl/hello/hello.Web/Web.Release.config
@@ -0,0 +1,31 @@
+<?xml version="1.0"?>
+
+<!-- For more information on using web.config transformation visit http://go.microsoft.com/fwlink/?LinkId=125889 -->
+
+<configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform">
+ <!--
+ In the example below, the "SetAttributes" transform will change the value of
+ "connectionString" to use "ReleaseSQLServer" only when the "Match" locator
+ finds an atrribute "name" that has a value of "MyDB".
+
+ <connectionStrings>
+ <add name="MyDB"
+ connectionString="Data Source=ReleaseSQLServer;Initial Catalog=MyReleaseDB;Integrated Security=True"
+ xdt:Transform="SetAttributes" xdt:Locator="Match(name)"/>
+ </connectionStrings>
+ -->
+ <system.web>
+ <compilation xdt:Transform="RemoveAttributes(debug)" />
+ <!--
+ In the example below, the "Replace" transform will replace the entire
+ <customErrors> section of your web.config file.
+ Note that because there is only one customErrors section under the
+ <system.web> node, there is no need to use the "xdt:Locator" attribute.
+
+ <customErrors defaultRedirect="GenericError.htm"
+ mode="RemoteOnly" xdt:Transform="Replace">
+ <error statusCode="500" redirect="InternalError.htm"/>
+ </customErrors>
+ -->
+ </system.web>
+</configuration> \ No newline at end of file
diff --git a/cs/demo/Ice/sl/hello/hello.Web/Web.config b/cs/demo/Ice/sl/hello/hello.Web/Web.config
new file mode 100644
index 00000000000..0598be112f3
--- /dev/null
+++ b/cs/demo/Ice/sl/hello/hello.Web/Web.config
@@ -0,0 +1,13 @@
+<?xml version="1.0"?>
+
+<!--
+ For more information on how to configure your ASP.NET application, please visit
+ http://go.microsoft.com/fwlink/?LinkId=169433
+ -->
+
+<configuration>
+ <system.web>
+ <compilation debug="true" targetFramework="4.0" />
+ </system.web>
+
+</configuration>
diff --git a/cs/demo/Ice/sl/hello/hello.Web/hello.Web.csproj b/cs/demo/Ice/sl/hello/hello.Web/hello.Web.csproj
new file mode 100644
index 00000000000..dd34cdc3530
--- /dev/null
+++ b/cs/demo/Ice/sl/hello/hello.Web/hello.Web.csproj
@@ -0,0 +1,101 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup>
+ <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+ <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+ <ProductVersion>
+ </ProductVersion>
+ <SchemaVersion>2.0</SchemaVersion>
+ <ProjectGuid>{581234FD-B61C-428C-A214-966E7E6DF42F}</ProjectGuid>
+ <ProjectTypeGuids>{349c5851-65df-11da-9384-00065b846f21};{fae04ec0-301f-11d3-bf4b-00c04f79efbc}</ProjectTypeGuids>
+ <OutputType>Library</OutputType>
+ <AppDesignerFolder>Properties</AppDesignerFolder>
+ <RootNamespace>hello.Web</RootNamespace>
+ <AssemblyName>hello.Web</AssemblyName>
+ <TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
+ <UseIISExpress>false</UseIISExpress>
+ <SilverlightApplicationList>{07F11600-BFCA-42DE-BF09-BF964E0A9D94}|..\hello\hello.csproj|ClientBin|False</SilverlightApplicationList>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+ <DebugSymbols>true</DebugSymbols>
+ <DebugType>full</DebugType>
+ <Optimize>false</Optimize>
+ <OutputPath>bin\</OutputPath>
+ <DefineConstants>DEBUG;TRACE</DefineConstants>
+ <ErrorReport>prompt</ErrorReport>
+ <WarningLevel>4</WarningLevel>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+ <DebugType>pdbonly</DebugType>
+ <Optimize>true</Optimize>
+ <OutputPath>bin\</OutputPath>
+ <DefineConstants>TRACE</DefineConstants>
+ <ErrorReport>prompt</ErrorReport>
+ <WarningLevel>4</WarningLevel>
+ </PropertyGroup>
+ <ItemGroup>
+ <Reference Include="Microsoft.CSharp" />
+ <Reference Include="System.Web.DynamicData" />
+ <Reference Include="System.Web.Entity" />
+ <Reference Include="System.Web.ApplicationServices" />
+ <Reference Include="System" />
+ <Reference Include="System.Data" />
+ <Reference Include="System.Core" />
+ <Reference Include="System.Data.DataSetExtensions" />
+ <Reference Include="System.Web.Extensions" />
+ <Reference Include="System.Xml.Linq" />
+ <Reference Include="System.Drawing" />
+ <Reference Include="System.Web" />
+ <Reference Include="System.Xml" />
+ <Reference Include="System.Configuration" />
+ <Reference Include="System.Web.Services" />
+ <Reference Include="System.EnterpriseServices" />
+ </ItemGroup>
+ <ItemGroup>
+ <Content Include="ClientBin\hello.xap" />
+ <Content Include="helloTestPage.aspx" />
+ <Content Include="helloTestPage.html" />
+ <Content Include="Silverlight.js" />
+ <Content Include="Web.config" />
+ <Content Include="Web.Debug.config">
+ <DependentUpon>Web.config</DependentUpon>
+ <SubType>Designer</SubType>
+ </Content>
+ <Content Include="Web.Release.config">
+ <DependentUpon>Web.config</DependentUpon>
+ <SubType>Designer</SubType>
+ </Content>
+ </ItemGroup>
+ <ItemGroup>
+ <Compile Include="Properties\AssemblyInfo.cs" />
+ </ItemGroup>
+ <ItemGroup />
+ <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
+ <Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v10.0\WebApplications\Microsoft.WebApplication.targets" />
+ <ProjectExtensions>
+ <VisualStudio>
+ <FlavorProperties GUID="{349c5851-65df-11da-9384-00065b846f21}">
+ <WebProjectProperties>
+ <UseIIS>False</UseIIS>
+ <AutoAssignPort>True</AutoAssignPort>
+ <DevelopmentServerPort>49182</DevelopmentServerPort>
+ <DevelopmentServerVPath>/</DevelopmentServerVPath>
+ <IISUrl>
+ </IISUrl>
+ <NTLMAuthentication>False</NTLMAuthentication>
+ <UseCustomServer>False</UseCustomServer>
+ <CustomServerUrl>
+ </CustomServerUrl>
+ <SaveServerSettingsInUserFile>False</SaveServerSettingsInUserFile>
+ </WebProjectProperties>
+ </FlavorProperties>
+ </VisualStudio>
+ </ProjectExtensions>
+ <!-- To modify your build process, add your task inside one of the targets below and uncomment it.
+ Other similar extension points exist, see Microsoft.Common.targets.
+ <Target Name="BeforeBuild">
+ </Target>
+ <Target Name="AfterBuild">
+ </Target>
+ -->
+</Project> \ No newline at end of file
diff --git a/cs/demo/Ice/sl/hello/hello.Web/helloTestPage.aspx b/cs/demo/Ice/sl/hello/hello.Web/helloTestPage.aspx
new file mode 100644
index 00000000000..b9ad90212bf
--- /dev/null
+++ b/cs/demo/Ice/sl/hello/hello.Web/helloTestPage.aspx
@@ -0,0 +1,74 @@
+<%@ Page Language="C#" AutoEventWireup="true" %>
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" >
+<head runat="server">
+ <title>hello</title>
+ <style type="text/css">
+ html, body {
+ height: 100%;
+ overflow: auto;
+ }
+ body {
+ padding: 0;
+ margin: 0;
+ }
+ #silverlightControlHost {
+ height: 100%;
+ text-align:center;
+ }
+ </style>
+ <script type="text/javascript" src="Silverlight.js"></script>
+ <script type="text/javascript">
+ function onSilverlightError(sender, args) {
+ var appSource = "";
+ if (sender != null && sender != 0) {
+ appSource = sender.getHost().Source;
+ }
+
+ var errorType = args.ErrorType;
+ var iErrorCode = args.ErrorCode;
+
+ if (errorType == "ImageError" || errorType == "MediaError") {
+ return;
+ }
+
+ var errMsg = "Unhandled Error in Silverlight Application " + appSource + "\n" ;
+
+ errMsg += "Code: "+ iErrorCode + " \n";
+ errMsg += "Category: " + errorType + " \n";
+ errMsg += "Message: " + args.ErrorMessage + " \n";
+
+ if (errorType == "ParserError") {
+ errMsg += "File: " + args.xamlFile + " \n";
+ errMsg += "Line: " + args.lineNumber + " \n";
+ errMsg += "Position: " + args.charPosition + " \n";
+ }
+ else if (errorType == "RuntimeError") {
+ if (args.lineNumber != 0) {
+ errMsg += "Line: " + args.lineNumber + " \n";
+ errMsg += "Position: " + args.charPosition + " \n";
+ }
+ errMsg += "MethodName: " + args.methodName + " \n";
+ }
+
+ throw new Error(errMsg);
+ }
+ </script>
+</head>
+<body>
+ <form id="form1" runat="server" style="height:100%">
+ <div id="silverlightControlHost">
+ <object data="data:application/x-silverlight-2," type="application/x-silverlight-2" width="100%" height="100%">
+ <param name="source" value="ClientBin/hello.xap"/>
+ <param name="onError" value="onSilverlightError" />
+ <param name="background" value="white" />
+ <param name="minRuntimeVersion" value="5.0.61118.0" />
+ <param name="autoUpgrade" value="true" />
+ <a href="http://go.microsoft.com/fwlink/?LinkID=149156&v=5.0.61118.0" style="text-decoration:none">
+ <img src="http://go.microsoft.com/fwlink/?LinkId=161376" alt="Get Microsoft Silverlight" style="border-style:none"/>
+ </a>
+ </object><iframe id="_sl_historyFrame" style="visibility:hidden;height:0px;width:0px;border:0px"></iframe></div>
+ </form>
+</body>
+</html>
diff --git a/cs/demo/Ice/sl/hello/hello.Web/helloTestPage.html b/cs/demo/Ice/sl/hello/hello.Web/helloTestPage.html
new file mode 100644
index 00000000000..2db07c21842
--- /dev/null
+++ b/cs/demo/Ice/sl/hello/hello.Web/helloTestPage.html
@@ -0,0 +1,73 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" >
+
+<head>
+ <title>hello</title>
+ <style type="text/css">
+ html, body {
+ height: 100%;
+ overflow: auto;
+ }
+ body {
+ padding: 0;
+ margin: 0;
+ }
+ #silverlightControlHost {
+ height: 100%;
+ text-align:center;
+ }
+ </style>
+ <script type="text/javascript" src="Silverlight.js"></script>
+ <script type="text/javascript">
+ function onSilverlightError(sender, args) {
+ var appSource = "";
+ if (sender != null && sender != 0) {
+ appSource = sender.getHost().Source;
+ }
+
+ var errorType = args.ErrorType;
+ var iErrorCode = args.ErrorCode;
+
+ if (errorType == "ImageError" || errorType == "MediaError") {
+ return;
+ }
+
+ var errMsg = "Unhandled Error in Silverlight Application " + appSource + "\n" ;
+
+ errMsg += "Code: "+ iErrorCode + " \n";
+ errMsg += "Category: " + errorType + " \n";
+ errMsg += "Message: " + args.ErrorMessage + " \n";
+
+ if (errorType == "ParserError") {
+ errMsg += "File: " + args.xamlFile + " \n";
+ errMsg += "Line: " + args.lineNumber + " \n";
+ errMsg += "Position: " + args.charPosition + " \n";
+ }
+ else if (errorType == "RuntimeError") {
+ if (args.lineNumber != 0) {
+ errMsg += "Line: " + args.lineNumber + " \n";
+ errMsg += "Position: " + args.charPosition + " \n";
+ }
+ errMsg += "MethodName: " + args.methodName + " \n";
+ }
+
+ throw new Error(errMsg);
+ }
+ </script>
+</head>
+<body>
+ <form id="form1" runat="server" style="height:100%">
+ <div id="silverlightControlHost">
+ <object data="data:application/x-silverlight-2," type="application/x-silverlight-2" width="100%" height="100%">
+ <param name="source" value="ClientBin/hello.xap"/>
+ <param name="onError" value="onSilverlightError" />
+ <param name="background" value="white" />
+ <param name="minRuntimeVersion" value="5.0.61118.0" />
+ <param name="autoUpgrade" value="true" />
+ <a href="http://go.microsoft.com/fwlink/?LinkID=149156&v=5.0.61118.0" style="text-decoration:none">
+ <img src="http://go.microsoft.com/fwlink/?LinkId=161376" alt="Get Microsoft Silverlight" style="border-style:none"/>
+ </a>
+ </object><iframe id="_sl_historyFrame" style="visibility:hidden;height:0px;width:0px;border:0px"></iframe></div>
+ </form>
+</body>
+</html>
diff --git a/cs/demo/Ice/sl/hello/hello.sln b/cs/demo/Ice/sl/hello/hello.sln
new file mode 100644
index 00000000000..ee530ec7634
--- /dev/null
+++ b/cs/demo/Ice/sl/hello/hello.sln
@@ -0,0 +1,26 @@
+
+Microsoft Visual Studio Solution File, Format Version 11.00
+# Visual Studio 2010
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "hello", "hello\hello.csproj", "{07F11600-BFCA-42DE-BF09-BF964E0A9D94}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "hello.Web", "hello.Web\hello.Web.csproj", "{581234FD-B61C-428C-A214-966E7E6DF42F}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|Any CPU = Debug|Any CPU
+ Release|Any CPU = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {07F11600-BFCA-42DE-BF09-BF964E0A9D94}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {07F11600-BFCA-42DE-BF09-BF964E0A9D94}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {07F11600-BFCA-42DE-BF09-BF964E0A9D94}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {07F11600-BFCA-42DE-BF09-BF964E0A9D94}.Release|Any CPU.Build.0 = Release|Any CPU
+ {581234FD-B61C-428C-A214-966E7E6DF42F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {581234FD-B61C-428C-A214-966E7E6DF42F}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {581234FD-B61C-428C-A214-966E7E6DF42F}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {581234FD-B61C-428C-A214-966E7E6DF42F}.Release|Any CPU.Build.0 = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+EndGlobal
diff --git a/cs/demo/Ice/sl/hello/hello/.gitignore b/cs/demo/Ice/sl/hello/hello/.gitignore
new file mode 100644
index 00000000000..e2ed1384003
--- /dev/null
+++ b/cs/demo/Ice/sl/hello/hello/.gitignore
@@ -0,0 +1,3 @@
+# Dummy file, so that git retains this otherwise empty directory.
+Hello.cs
+Bin/*
diff --git a/cs/demo/Ice/sl/hello/hello/App.xaml b/cs/demo/Ice/sl/hello/hello/App.xaml
new file mode 100644
index 00000000000..2c699124f61
--- /dev/null
+++ b/cs/demo/Ice/sl/hello/hello/App.xaml
@@ -0,0 +1,8 @@
+<Application xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
+ xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
+ x:Class="hello.App"
+ >
+ <Application.Resources>
+
+ </Application.Resources>
+</Application>
diff --git a/cs/demo/Ice/sl/hello/hello/App.xaml.cs b/cs/demo/Ice/sl/hello/hello/App.xaml.cs
new file mode 100644
index 00000000000..36272c0870e
--- /dev/null
+++ b/cs/demo/Ice/sl/hello/hello/App.xaml.cs
@@ -0,0 +1,76 @@
+// **********************************************************************
+//
+// Copyright (c) 2003-2011 ZeroC, Inc. All rights reserved.
+//
+// This copy of Ice is licensed to you under the terms described in the
+// ICE_LICENSE file included in this distribution.
+//
+// **********************************************************************
+
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Net;
+using System.Windows;
+using System.Windows.Controls;
+using System.Windows.Documents;
+using System.Windows.Input;
+using System.Windows.Media;
+using System.Windows.Media.Animation;
+using System.Windows.Shapes;
+
+namespace hello
+{
+ public partial class App : Application
+ {
+
+ public App()
+ {
+ this.Startup += this.Application_Startup;
+ this.Exit += this.Application_Exit;
+ this.UnhandledException += this.Application_UnhandledException;
+
+ InitializeComponent();
+ }
+
+ private void Application_Startup(object sender, StartupEventArgs e)
+ {
+ this.RootVisual = new MainPage();
+ }
+
+ private void Application_Exit(object sender, EventArgs e)
+ {
+ }
+
+ private void Application_UnhandledException(object sender, ApplicationUnhandledExceptionEventArgs e)
+ {
+ // If the app is running outside of the debugger then report the exception using
+ // the browser's exception mechanism. On IE this will display it a yellow alert
+ // icon in the status bar and Firefox will display a script error.
+ if(!System.Diagnostics.Debugger.IsAttached)
+ {
+
+ // NOTE: This will allow the application to continue running after an exception has been thrown
+ // but not handled.
+ // For production applications this error handling should be replaced with something that will
+ // report the error to the website and stop the application.
+ e.Handled = true;
+ Deployment.Current.Dispatcher.BeginInvoke(delegate { ReportErrorToDOM(e); });
+ }
+ }
+
+ private void ReportErrorToDOM(ApplicationUnhandledExceptionEventArgs e)
+ {
+ try
+ {
+ string errorMsg = e.ExceptionObject.Message + e.ExceptionObject.StackTrace;
+ errorMsg = errorMsg.Replace('"', '\'').Replace("\r\n", @"\n");
+
+ System.Windows.Browser.HtmlPage.Window.Eval("throw new Error(\"Unhandled Error in Silverlight Application " + errorMsg + "\");");
+ }
+ catch(Exception)
+ {
+ }
+ }
+ }
+}
diff --git a/cs/demo/Ice/sl/hello/hello/Hello.ice b/cs/demo/Ice/sl/hello/hello/Hello.ice
new file mode 100644
index 00000000000..cdb2f95276d
--- /dev/null
+++ b/cs/demo/Ice/sl/hello/hello/Hello.ice
@@ -0,0 +1,21 @@
+// **********************************************************************
+//
+// Copyright (c) 2003-2011 ZeroC, Inc. All rights reserved.
+//
+// This copy of Ice is licensed to you under the terms described in the
+// ICE_LICENSE file included in this distribution.
+//
+// **********************************************************************
+
+#pragma once
+
+module Demo
+{
+
+interface Hello
+{
+ idempotent void sayHello(int delay);
+ void shutdown();
+};
+
+};
diff --git a/cs/demo/Ice/sl/hello/hello/MainPage.xaml b/cs/demo/Ice/sl/hello/hello/MainPage.xaml
new file mode 100644
index 00000000000..ac3fddcf692
--- /dev/null
+++ b/cs/demo/Ice/sl/hello/hello/MainPage.xaml
@@ -0,0 +1,56 @@
+<UserControl x:Class="hello.MainPage"
+ xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
+ xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
+ xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
+ xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006">
+
+ <StackPanel Margin="10, 10, 10, 10" HorizontalAlignment="Center">
+ <StackPanel Orientation="Horizontal" VerticalAlignment="Center"
+ Margin="5, 5, 5, 5">
+ <TextBlock Text="Host:" Height="25" Width="80" VerticalAlignment="Center"/>
+ <TextBox x:Name="txtHost" HorizontalAlignment="Left"
+ Text="localhost"
+ TextWrapping="NoWrap"
+ VerticalAlignment="Top" Height="25" Width="320"/>
+ </StackPanel>
+ <StackPanel Orientation="Horizontal" VerticalAlignment="Center"
+ Margin="5, 5, 5, 5">
+ <TextBlock Text="Mode:" Height="25" Width="80" VerticalAlignment="Center"/>
+ <ComboBox x:Name="cmbModes" Height="25" Width="320" ItemsSource="{Binding}"/>
+ </StackPanel>
+ <StackPanel Orientation="Horizontal" VerticalAlignment="Center"
+ Margin="5, 5, 5, 5">
+ <TextBlock Text="Timeout:" Height="25" Width="80" VerticalAlignment="Center"/>
+ <Slider Height="25" Width="235" IsHitTestVisible="True" Minimum="0" Maximum="2"
+ SmallChange="0.1" LargeChange="0.1" ValueChanged="timeoutValueChanged"/>
+ <TextBox x:Name="txtTimeout" HorizontalAlignment="Right"
+ Text="0 ms"
+ TextWrapping="NoWrap"
+ VerticalAlignment="Top" Height="25" Width="80"
+ Margin="5, 0, 0, 0" IsReadOnly="True"/>
+ </StackPanel>
+ <StackPanel Orientation="Horizontal" VerticalAlignment="Center"
+ Margin="5, 5, 5, 5">
+ <TextBlock Text="Delay:" Height="25" Width="80" VerticalAlignment="Center"/>
+ <Slider Height="25" Width="235" IsHitTestVisible="True" Minimum="0" Maximum="2"
+ SmallChange="0.1" LargeChange="0.1" ValueChanged="delayValueChanged"/>
+ <TextBox x:Name="txtDelay" HorizontalAlignment="Right"
+ Text="0 ms"
+ TextWrapping="NoWrap"
+ VerticalAlignment="Top" Height="25" Width="80"
+ Margin="5, 0, 0, 0" IsReadOnly="True"/>
+ </StackPanel>
+ <Grid Margin="5, 5, 5, 5">
+ <TextBox x:Name="txtOutput"
+ FontSize="12" Text="" TextWrapping="Wrap" IsEnabled="True" Height="120"
+ Width="400" ScrollViewer.HorizontalScrollBarVisibility="Auto"
+ ScrollViewer.VerticalScrollBarVisibility="Auto" IsReadOnly="True"/>
+ </Grid>
+ <StackPanel Orientation="Horizontal" VerticalAlignment="Center"
+ Margin="5, 5, 5, 5">
+ <Button Name="btnSayHello" Content="Say Hello" Click="btnSayHelloClick" />
+ <Button Name="btnFlush" Content="Flush" Margin="5, 0, 0, 0" IsEnabled="False" Click="btnFlushClick" />
+ <Button Name="btnShutdown" Content="Shutdown" Margin="5, 0, 0, 0" Click="btnShutdownClick" />
+ </StackPanel>
+ </StackPanel>
+</UserControl>
diff --git a/cs/demo/Ice/sl/hello/hello/MainPage.xaml.cs b/cs/demo/Ice/sl/hello/hello/MainPage.xaml.cs
new file mode 100644
index 00000000000..29f67fcf651
--- /dev/null
+++ b/cs/demo/Ice/sl/hello/hello/MainPage.xaml.cs
@@ -0,0 +1,180 @@
+// **********************************************************************
+//
+// Copyright (c) 2003-2011 ZeroC, Inc. All rights reserved.
+//
+// This copy of Ice is licensed to you under the terms described in the
+// ICE_LICENSE file included in this distribution.
+//
+// **********************************************************************
+
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Net;
+using System.Windows;
+using System.Windows.Controls;
+using System.Windows.Documents;
+using System.Windows.Input;
+using System.Windows.Media;
+using System.Windows.Media.Animation;
+using System.Windows.Shapes;
+using System.Collections.ObjectModel;
+using Demo;
+
+namespace hello
+{
+ public partial class MainPage : UserControl
+ {
+ public MainPage()
+ {
+ InitializeComponent();
+ ObservableCollection<string> modes = new ObservableCollection<string>();
+ modes.Add("Twoway");
+ modes.Add("Oneway");
+ modes.Add("Batch Oneway");
+ cmbModes.DataContext = modes;
+ cmbModes.SelectedIndex = 0;
+ Ice.InitializationData initData = new Ice.InitializationData();
+ initData.dispatcher = delegate(System.Action action, Ice.Connection connection)
+ {
+ Dispatcher.BeginInvoke(action);
+ };
+ _communicator = Ice.Util.initialize(initData);
+ }
+
+ private void timeoutValueChanged(object sender, RoutedPropertyChangedEventArgs<double> e)
+ {
+ _timeout = (int)Math.Round(e.NewValue * 1000, 0);
+ txtTimeout.Text = _timeout.ToString() + " ms";
+ }
+
+ private void delayValueChanged(object sender, RoutedPropertyChangedEventArgs<double> e)
+ {
+ _delay = (int)Math.Round(e.NewValue * 1000, 0);
+ txtDelay.Text = _delay.ToString() + " ms";
+ }
+
+ private void btnSayHelloClick(object sender, RoutedEventArgs e)
+ {
+ int mode = cmbModes.SelectedIndex;
+ string host = txtHost.Text;
+ txtOutput.Text = "";
+ try
+ {
+ Ice.ObjectPrx proxy = _communicator.stringToProxy("hello:tcp -h " + host + " -p 4502");
+ switch (mode)
+ {
+ case 0:
+ {
+ proxy = proxy.ice_twoway();
+ break;
+ }
+ case 1:
+ {
+ proxy = proxy.ice_oneway();
+ break;
+ }
+ case 2:
+ {
+ proxy = proxy.ice_batchOneway();
+ btnFlush.IsEnabled = true;
+ break;
+ }
+ default:
+ {
+ throw new ArgumentException("Invalid Mode index " + mode.ToString());
+ }
+ }
+
+ if (_timeout == 0)
+ {
+ proxy = proxy.ice_timeout(-1);
+ }
+ else
+ {
+ proxy = proxy.ice_timeout(_timeout);
+ }
+ HelloPrx hello = HelloPrxHelper.uncheckedCast(proxy);
+ if(mode != 2)
+ {
+ bool response = false;
+ Ice.AsyncResult result = hello.begin_sayHello(_delay).whenCompleted(
+ () =>
+ {
+ response = true;
+ txtOutput.Text = "Ready";
+ },
+ (Ice.Exception ex) =>
+ {
+ response = true;
+ txtOutput.Text = ex.ToString();
+ }).whenSent(
+ (bool sentSynchronously) =>
+ {
+ if(response)
+ {
+ return; // Response was received already.
+ }
+
+ if(mode == 0)
+ {
+ txtOutput.Text = "Wait for response";
+ }
+ else
+ {
+ txtOutput.Text = "Ready";
+ }
+ });
+ if(!result.sentSynchronously())
+ {
+ txtOutput.Text = "Sending request";
+ }
+ }
+ else
+ {
+ txtOutput.Text = "Queued hello request";
+ }
+ }
+ catch(System.Exception ex)
+ {
+ txtOutput.Text = ex.ToString();
+ }
+ }
+
+ private void btnFlushClick(object sender, RoutedEventArgs e)
+ {
+ _communicator.begin_flushBatchRequests().whenCompleted(
+ (Ice.Exception ex) =>
+ {
+ txtOutput.Text = ex.ToString();
+ }).whenSent(
+ (bool sentSynchronously) =>
+ {
+ btnFlush.IsEnabled = false;
+ txtOutput.Text = "Flushed batch requests";
+ });
+ }
+
+ private void btnShutdownClick(object sender, RoutedEventArgs e)
+ {
+ string host = txtHost.Text;
+ txtOutput.Text = "Shutting down...";
+
+ Ice.ObjectPrx proxy = _communicator.stringToProxy("hello:tcp -h " + host + " -p 4502");
+ HelloPrx hello = HelloPrxHelper.uncheckedCast(proxy);
+ hello.begin_shutdown().whenCompleted(
+ () =>
+ {
+ txtOutput.Text = "Ready";
+ },
+ (Ice.Exception ex) =>
+ {
+ txtOutput.Text = ex.ToString();
+ });
+ }
+
+ private int _timeout = 0;
+ private int _delay = 0;
+ private Ice.Communicator _communicator;
+ }
+}
diff --git a/cs/demo/Ice/sl/hello/hello/Properties/AppManifest.xml b/cs/demo/Ice/sl/hello/hello/Properties/AppManifest.xml
new file mode 100644
index 00000000000..a9552327529
--- /dev/null
+++ b/cs/demo/Ice/sl/hello/hello/Properties/AppManifest.xml
@@ -0,0 +1,6 @@
+<Deployment xmlns="http://schemas.microsoft.com/client/2007/deployment"
+ xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
+>
+ <Deployment.Parts>
+ </Deployment.Parts>
+</Deployment>
diff --git a/cs/demo/Ice/sl/hello/hello/Properties/AssemblyInfo.cs b/cs/demo/Ice/sl/hello/hello/Properties/AssemblyInfo.cs
new file mode 100644
index 00000000000..4f27c89ccd1
--- /dev/null
+++ b/cs/demo/Ice/sl/hello/hello/Properties/AssemblyInfo.cs
@@ -0,0 +1,35 @@
+using System.Reflection;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+// General Information about an assembly is controlled through the following
+// set of attributes. Change these attribute values to modify the information
+// associated with an assembly.
+[assembly: AssemblyTitle("hello")]
+[assembly: AssemblyDescription("")]
+[assembly: AssemblyConfiguration("")]
+[assembly: AssemblyCompany("ZeroC")]
+[assembly: AssemblyProduct("hello")]
+[assembly: AssemblyCopyright("Copyright © ZeroC 2012")]
+[assembly: AssemblyTrademark("")]
+[assembly: AssemblyCulture("")]
+
+// Setting ComVisible to false makes the types in this assembly not visible
+// to COM components. If you need to access a type in this assembly from
+// COM, set the ComVisible attribute to true on that type.
+[assembly: ComVisible(false)]
+
+// The following GUID is for the ID of the typelib if this project is exposed to COM
+[assembly: Guid("cad5cad2-4177-4d15-8f0d-c6179c8850da")]
+
+// Version information for an assembly consists of the following four values:
+//
+// Major Version
+// Minor Version
+// Build Number
+// Revision
+//
+// You can specify all the values or you can default the Revision and Build Numbers
+// by using the '*' as shown below:
+[assembly: AssemblyVersion("1.0.0.0")]
+[assembly: AssemblyFileVersion("1.0.0.0")]
diff --git a/cs/demo/Ice/sl/hello/hello/hello.csproj b/cs/demo/Ice/sl/hello/hello/hello.csproj
new file mode 100644
index 00000000000..33433eb67ab
--- /dev/null
+++ b/cs/demo/Ice/sl/hello/hello/hello.csproj
@@ -0,0 +1,114 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup>
+ <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+ <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+ <ProductVersion>8.0.50727</ProductVersion>
+ <SchemaVersion>2.0</SchemaVersion>
+ <ProjectGuid>{07F11600-BFCA-42DE-BF09-BF964E0A9D94}</ProjectGuid>
+ <ProjectTypeGuids>{A1591282-1198-4647-A2B1-27E5FF5F6F3B};{fae04ec0-301f-11d3-bf4b-00c04f79efbc}</ProjectTypeGuids>
+ <OutputType>Library</OutputType>
+ <AppDesignerFolder>Properties</AppDesignerFolder>
+ <RootNamespace>hello</RootNamespace>
+ <AssemblyName>hello</AssemblyName>
+ <TargetFrameworkIdentifier>Silverlight</TargetFrameworkIdentifier>
+ <TargetFrameworkVersion>v5.0</TargetFrameworkVersion>
+ <SilverlightVersion>$(TargetFrameworkVersion)</SilverlightVersion>
+ <SilverlightApplication>true</SilverlightApplication>
+ <SupportedCultures>
+ </SupportedCultures>
+ <XapOutputs>true</XapOutputs>
+ <GenerateSilverlightManifest>true</GenerateSilverlightManifest>
+ <XapFilename>hello.xap</XapFilename>
+ <SilverlightManifestTemplate>Properties\AppManifest.xml</SilverlightManifestTemplate>
+ <SilverlightAppEntry>hello.App</SilverlightAppEntry>
+ <TestPageFileName>helloTestPage.html</TestPageFileName>
+ <CreateTestPage>true</CreateTestPage>
+ <ValidateXaml>true</ValidateXaml>
+ <EnableOutOfBrowser>false</EnableOutOfBrowser>
+ <OutOfBrowserSettingsFile>Properties\OutOfBrowserSettings.xml</OutOfBrowserSettingsFile>
+ <UsePlatformExtensions>false</UsePlatformExtensions>
+ <ThrowErrorsInValidation>true</ThrowErrorsInValidation>
+ <LinkedServerProject>
+ </LinkedServerProject>
+ </PropertyGroup>
+ <!-- This property group is only here to support building this project using the
+ MSBuild 3.5 toolset. In order to work correctly with this older toolset, it needs
+ to set the TargetFrameworkVersion to v3.5 -->
+ <PropertyGroup Condition="'$(MSBuildToolsVersion)' == '3.5'">
+ <TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+ <DebugSymbols>true</DebugSymbols>
+ <DebugType>full</DebugType>
+ <Optimize>false</Optimize>
+ <OutputPath>Bin\Debug\</OutputPath>
+ <DefineConstants>DEBUG;TRACE;SILVERLIGHT</DefineConstants>
+ <NoStdLib>true</NoStdLib>
+ <NoConfig>true</NoConfig>
+ <ErrorReport>prompt</ErrorReport>
+ <WarningLevel>4</WarningLevel>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+ <DebugType>pdbonly</DebugType>
+ <Optimize>true</Optimize>
+ <OutputPath>Bin\Release\</OutputPath>
+ <DefineConstants>TRACE;SILVERLIGHT</DefineConstants>
+ <NoStdLib>true</NoStdLib>
+ <NoConfig>true</NoConfig>
+ <ErrorReport>prompt</ErrorReport>
+ <WarningLevel>4</WarningLevel>
+ </PropertyGroup>
+ <ItemGroup>
+ <Reference Include="Ice, Version=3.4.2.0, Culture=neutral, PublicKeyToken=1f998c50fec78381, processorArchitecture=MSIL" />
+ <Reference Include="mscorlib" />
+ <Reference Include="System.Windows" />
+ <Reference Include="system" />
+ <Reference Include="System.Core" />
+ <Reference Include="System.Net" />
+ <Reference Include="System.Xml" />
+ <Reference Include="System.Windows.Browser" />
+ </ItemGroup>
+ <ItemGroup>
+ <Compile Include="App.xaml.cs">
+ <DependentUpon>App.xaml</DependentUpon>
+ </Compile>
+ <Compile Include="Hello.cs">
+ <SubType>Code</SubType>
+ </Compile>
+ <Compile Include="MainPage.xaml.cs">
+ <DependentUpon>MainPage.xaml</DependentUpon>
+ </Compile>
+ <Compile Include="Properties\AssemblyInfo.cs" />
+ </ItemGroup>
+ <ItemGroup>
+ <ApplicationDefinition Include="App.xaml">
+ <SubType>Designer</SubType>
+ <Generator>MSBuild:Compile</Generator>
+ </ApplicationDefinition>
+ <Page Include="MainPage.xaml">
+ <SubType>Designer</SubType>
+ <Generator>MSBuild:Compile</Generator>
+ </Page>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Hello.ice" />
+ <None Include="Properties\AppManifest.xml" />
+ </ItemGroup>
+ <Import Project="$(MSBuildExtensionsPath32)\Microsoft\Silverlight\$(SilverlightVersion)\Microsoft.Silverlight.CSharp.targets" />
+ <!-- To modify your build process, add your task inside one of the targets below and uncomment it.
+ Other similar extension points exist, see Microsoft.Common.targets.
+ <Target Name="BeforeBuild">
+ </Target>
+ <Target Name="AfterBuild">
+ </Target>
+ -->
+ <ProjectExtensions>
+ <VisualStudio>
+ <FlavorProperties GUID="{A1591282-1198-4647-A2B1-27E5FF5F6F3B}">
+ <SilverlightProjectProperties />
+ </FlavorProperties>
+ <UserProperties ZerocIce_Enabled="True" />
+ </VisualStudio>
+ </ProjectExtensions>
+</Project> \ No newline at end of file
diff --git a/cs/demo/democf.sln b/cs/demo/democf.sln
index d3aaa085709..bcedf864226 100755
--- a/cs/demo/democf.sln
+++ b/cs/demo/democf.sln
@@ -1,7 +1,13 @@

Microsoft Visual Studio Solution File, Format Version 10.00
# Visual Studio 2008
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Ice.compact.client", "Ice\compact\Ice.compact.client.csproj", "{95E6B539-E515-4BD4-BDB0-35D7C49C897D}"
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "client", "Ice\compact\hello\client.csproj", "{95E6B539-E515-4BD4-BDB0-35D7C49C897D}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "hello", "hello", "{853FE674-7861-4714-A941-FF365EF4DF2A}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "bidir", "bidir", "{2E7BE181-7EE0-4A89-92F8-724F9FDC3DDD}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "server", "Ice\compact\bidir\server.csproj", "{05B11482-32A1-4212-A7F8-2A135FADD164}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
@@ -15,8 +21,18 @@ Global
{95E6B539-E515-4BD4-BDB0-35D7C49C897D}.Release|Any CPU.ActiveCfg = Release|Any CPU
{95E6B539-E515-4BD4-BDB0-35D7C49C897D}.Release|Any CPU.Build.0 = Release|Any CPU
{95E6B539-E515-4BD4-BDB0-35D7C49C897D}.Release|Any CPU.Deploy.0 = Release|Any CPU
+ {05B11482-32A1-4212-A7F8-2A135FADD164}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {05B11482-32A1-4212-A7F8-2A135FADD164}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {05B11482-32A1-4212-A7F8-2A135FADD164}.Debug|Any CPU.Deploy.0 = Debug|Any CPU
+ {05B11482-32A1-4212-A7F8-2A135FADD164}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {05B11482-32A1-4212-A7F8-2A135FADD164}.Release|Any CPU.Build.0 = Release|Any CPU
+ {05B11482-32A1-4212-A7F8-2A135FADD164}.Release|Any CPU.Deploy.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
+ GlobalSection(NestedProjects) = preSolution
+ {95E6B539-E515-4BD4-BDB0-35D7C49C897D} = {853FE674-7861-4714-A941-FF365EF4DF2A}
+ {05B11482-32A1-4212-A7F8-2A135FADD164} = {2E7BE181-7EE0-4A89-92F8-724F9FDC3DDD}
+ EndGlobalSection
EndGlobal
diff --git a/cs/demo/demosl.sln b/cs/demo/demosl.sln
new file mode 100644
index 00000000000..bd20033ba0e
--- /dev/null
+++ b/cs/demo/demosl.sln
@@ -0,0 +1,73 @@
+
+Microsoft Visual Studio Solution File, Format Version 11.00
+# Visual Studio 2010
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "hello", "Ice\sl\hello\hello\hello.csproj", "{07F11600-BFCA-42DE-BF09-BF964E0A9D94}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "hello.Web", "Ice\sl\hello\hello.Web\hello.Web.csproj", "{581234FD-B61C-428C-A214-966E7E6DF42F}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "hello", "hello", "{BFB198BC-429D-420F-94B5-360172E91053}"
+ ProjectSection(SolutionItems) = preProject
+ Ice\sl\hello\README.txt = Ice\sl\hello\README.txt
+ EndProjectSection
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "bidir", "bidir", "{92D95920-7E25-4A77-AD00-651D7DA94DFE}"
+ ProjectSection(SolutionItems) = preProject
+ Ice\sl\bidir\README.txt = Ice\sl\bidir\README.txt
+ EndProjectSection
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "bidir", "Ice\sl\bidir\bidir\bidir.csproj", "{73FE67BB-A2C1-464A-8F84-7B1282288CBA}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "bidir.Web", "Ice\sl\bidir\bidir.Web\bidir.Web.csproj", "{0F089AE9-9F65-4C33-9F1F-183C6AC6E043}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "chat", "Glacier2\sl\chat\chat.csproj", "{78FA0B57-6672-4173-8CA3-C81FA402F4E1}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "chat.Web", "Glacier2\sl\chat.Web\chat.Web.csproj", "{C0234952-390B-4C8F-8288-C7B0BADAD80E}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "chat", "chat", "{18878230-8C72-4CDC-B458-9140050F0BBF}"
+ ProjectSection(SolutionItems) = preProject
+ Glacier2\sl\README.txt = Glacier2\sl\README.txt
+ EndProjectSection
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|Any CPU = Debug|Any CPU
+ Release|Any CPU = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {07F11600-BFCA-42DE-BF09-BF964E0A9D94}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {07F11600-BFCA-42DE-BF09-BF964E0A9D94}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {07F11600-BFCA-42DE-BF09-BF964E0A9D94}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {07F11600-BFCA-42DE-BF09-BF964E0A9D94}.Release|Any CPU.Build.0 = Release|Any CPU
+ {581234FD-B61C-428C-A214-966E7E6DF42F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {581234FD-B61C-428C-A214-966E7E6DF42F}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {581234FD-B61C-428C-A214-966E7E6DF42F}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {581234FD-B61C-428C-A214-966E7E6DF42F}.Release|Any CPU.Build.0 = Release|Any CPU
+ {73FE67BB-A2C1-464A-8F84-7B1282288CBA}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {73FE67BB-A2C1-464A-8F84-7B1282288CBA}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {73FE67BB-A2C1-464A-8F84-7B1282288CBA}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {73FE67BB-A2C1-464A-8F84-7B1282288CBA}.Release|Any CPU.Build.0 = Release|Any CPU
+ {0F089AE9-9F65-4C33-9F1F-183C6AC6E043}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {0F089AE9-9F65-4C33-9F1F-183C6AC6E043}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {0F089AE9-9F65-4C33-9F1F-183C6AC6E043}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {0F089AE9-9F65-4C33-9F1F-183C6AC6E043}.Release|Any CPU.Build.0 = Release|Any CPU
+ {78FA0B57-6672-4173-8CA3-C81FA402F4E1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {78FA0B57-6672-4173-8CA3-C81FA402F4E1}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {78FA0B57-6672-4173-8CA3-C81FA402F4E1}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {78FA0B57-6672-4173-8CA3-C81FA402F4E1}.Release|Any CPU.Build.0 = Release|Any CPU
+ {C0234952-390B-4C8F-8288-C7B0BADAD80E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {C0234952-390B-4C8F-8288-C7B0BADAD80E}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {C0234952-390B-4C8F-8288-C7B0BADAD80E}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {C0234952-390B-4C8F-8288-C7B0BADAD80E}.Release|Any CPU.Build.0 = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+ GlobalSection(NestedProjects) = preSolution
+ {581234FD-B61C-428C-A214-966E7E6DF42F} = {BFB198BC-429D-420F-94B5-360172E91053}
+ {07F11600-BFCA-42DE-BF09-BF964E0A9D94} = {BFB198BC-429D-420F-94B5-360172E91053}
+ {73FE67BB-A2C1-464A-8F84-7B1282288CBA} = {92D95920-7E25-4A77-AD00-651D7DA94DFE}
+ {0F089AE9-9F65-4C33-9F1F-183C6AC6E043} = {92D95920-7E25-4A77-AD00-651D7DA94DFE}
+ {C0234952-390B-4C8F-8288-C7B0BADAD80E} = {18878230-8C72-4CDC-B458-9140050F0BBF}
+ {78FA0B57-6672-4173-8CA3-C81FA402F4E1} = {18878230-8C72-4CDC-B458-9140050F0BBF}
+ EndGlobalSection
+EndGlobal