- added web services timeout settings
git-svn-id: https://svn.apache.org/repos/asf/chemistry/dotcmis/trunk@1085085 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/DotCMIS/binding/webservices/webservices.cs b/DotCMIS/binding/webservices/webservices.cs
index a6186af..a13d477 100644
--- a/DotCMIS/binding/webservices/webservices.cs
+++ b/DotCMIS/binding/webservices/webservices.cs
@@ -233,7 +233,7 @@
SecurityBindingElement securityElement = SecurityBindingElement.CreateUserNameOverTransportBindingElement();
securityElement.SecurityHeaderLayout = SecurityHeaderLayout.LaxTimestampFirst;
- string enableUnsecuredResponseFlag = session.GetValue(SessionParameter.EnableUnsecuredResponse) as string;
+ string enableUnsecuredResponseFlag = session.GetValue(SessionParameter.WebServicesEnableUnsecuredResponse) as string;
if (enableUnsecuredResponseFlag != null && enableUnsecuredResponseFlag.ToLower().Equals("true"))
{
PropertyInfo eur = securityElement.GetType().GetProperty("EnableUnsecuredResponse");
@@ -256,6 +256,30 @@
elements.Add(transportElement);
binding = new CustomBinding(elements);
+
+ string openTimeOut = session.GetValue(SessionParameter.WebServicesOpenTimeout) as string;
+ if (openTimeOut != null)
+ {
+ binding.OpenTimeout = TimeSpan.Parse(openTimeOut);
+ }
+
+ string closeTimeOut = session.GetValue(SessionParameter.WebServicesCloseTimeout) as string;
+ if (closeTimeOut != null)
+ {
+ binding.CloseTimeout = TimeSpan.Parse(closeTimeOut);
+ }
+
+ string sendTimeOut = session.GetValue(SessionParameter.WebServicesSendTimeout) as string;
+ if (sendTimeOut != null)
+ {
+ binding.SendTimeout = TimeSpan.Parse(sendTimeOut);
+ }
+
+ string receiveTimeOut = session.GetValue(SessionParameter.WebServicesReceiveTimeout) as string;
+ if (receiveTimeOut != null)
+ {
+ binding.ReceiveTimeout = TimeSpan.Parse(receiveTimeOut);
+ }
}
if (serviceKey == SessionParameter.WebServicesRepositoryService)
diff --git a/DotCMIS/const.cs b/DotCMIS/const.cs
index 93626ee..c9e3a7d 100644
--- a/DotCMIS/const.cs
+++ b/DotCMIS/const.cs
@@ -47,7 +47,12 @@
public const string WebServicesAclService = "org.apache.chemistry.dotcmis.binding.webservices.ACLService";
public const string WebServicesWCFBinding = "org.apache.chemistry.dotcmis.binding.webservices.wcfbinding";
- public const string EnableUnsecuredResponse = "org.apache.chemistry.dotcmis.binding.webservices.enableUnsecuredResponse"; // requires hotfix 971493 or the .NET framework 4
+ public const string WebServicesOpenTimeout = "org.apache.chemistry.dotcmis.binding.webservices.openTimeout";
+ public const string WebServicesCloseTimeout = "org.apache.chemistry.dotcmis.binding.webservices.closeTimeout";
+ public const string WebServicesSendTimeout = "org.apache.chemistry.dotcmis.binding.webservices.sendTimeout";
+ public const string WebServicesReceiveTimeout = "org.apache.chemistry.dotcmis.binding.webservices.receiveTimeout";
+
+ public const string WebServicesEnableUnsecuredResponse = "org.apache.chemistry.dotcmis.binding.webservices.enableUnsecuredResponse"; // requires hotfix 971493 or the .NET framework 4
// authentication provider
public const string AuthenticationProviderClass = "org.apache.chemistry.dotcmis.binding.auth.classname";