xml/Microsoft.Azure.ServiceBus/ISessionClient.xml (175 lines of code) (raw):
<Type Name="ISessionClient" FullName="Microsoft.Azure.ServiceBus.ISessionClient">
<TypeSignature Language="C#" Value="public interface ISessionClient : Microsoft.Azure.ServiceBus.IClientEntity" />
<TypeSignature Language="ILAsm" Value=".class public interface auto ansi abstract ISessionClient implements class Microsoft.Azure.ServiceBus.IClientEntity" />
<TypeSignature Language="DocId" Value="T:Microsoft.Azure.ServiceBus.ISessionClient" />
<TypeSignature Language="VB.NET" Value="Public Interface ISessionClient
Implements IClientEntity" />
<TypeSignature Language="F#" Value="type ISessionClient = interface
 interface IClientEntity" />
<AssemblyInfo>
<AssemblyName>Microsoft.Azure.ServiceBus</AssemblyName>
<AssemblyVersion>5.1.3.0</AssemblyVersion>
<AssemblyVersion>5.2.0.0</AssemblyVersion>
</AssemblyInfo>
<Interfaces>
<Interface>
<InterfaceName>Microsoft.Azure.ServiceBus.IClientEntity</InterfaceName>
</Interface>
</Interfaces>
<Docs>
<summary>
Describes a Session client. A session client can be used to accept session objects which can be used to interact with all messages with the same sessionId.
</summary>
<remarks>
You can accept any session or a given session (identified by <see cref="P:Microsoft.Azure.ServiceBus.IMessageSession.SessionId" /> using a session client.
Once you accept a session, you can use it as a <see cref="T:Microsoft.Azure.ServiceBus.Core.MessageReceiver" /> which receives only messages having the same session id.
See <see cref="T:Microsoft.Azure.ServiceBus.IMessageSession" /> for usage of session object.
<example>
To create a new SessionClient
<code>
ISessionClient sessionClient = new SessionClient(
namespaceConnectionString,
queueName,
ReceiveMode.PeekLock);
</code>
To receive a session object for a given sessionId
<code>
IMessageSession session = await sessionClient.AcceptMessageSessionAsync(sessionId);
</code>
To receive any session
<code>
IMessageSession session = await sessionClient.AcceptMessageSessionAsync();
</code></example></remarks>
<altmember cref="T:Microsoft.Azure.ServiceBus.SessionClient" />
<altmember cref="T:Microsoft.Azure.ServiceBus.IMessageSession" />
</Docs>
<Members>
<Member MemberName="AcceptMessageSessionAsync">
<MemberSignature Language="C#" Value="public System.Threading.Tasks.Task<Microsoft.Azure.ServiceBus.IMessageSession> AcceptMessageSessionAsync ();" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class System.Threading.Tasks.Task`1<class Microsoft.Azure.ServiceBus.IMessageSession> AcceptMessageSessionAsync() cil managed" />
<MemberSignature Language="DocId" Value="M:Microsoft.Azure.ServiceBus.ISessionClient.AcceptMessageSessionAsync" />
<MemberSignature Language="VB.NET" Value="Public Function AcceptMessageSessionAsync () As Task(Of IMessageSession)" />
<MemberSignature Language="F#" Value="abstract member AcceptMessageSessionAsync : unit -> System.Threading.Tasks.Task<Microsoft.Azure.ServiceBus.IMessageSession>" Usage="iSessionClient.AcceptMessageSessionAsync " />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyName>Microsoft.Azure.ServiceBus</AssemblyName>
<AssemblyVersion>5.2.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Threading.Tasks.Task<Microsoft.Azure.ServiceBus.IMessageSession></ReturnType>
</ReturnValue>
<Parameters />
<Docs>
<summary>
Gets a session object of any <see cref="P:Microsoft.Azure.ServiceBus.IMessageSession.SessionId" /> that can be used to receive messages for that sessionId.
</summary>
<returns>To be added.</returns>
<remarks>All plugins registered on <see cref="T:Microsoft.Azure.ServiceBus.SessionClient" /> will be applied to each <see cref="T:Microsoft.Azure.ServiceBus.MessageSession" /> that is accepted.
Individual sessions can further register additional plugins.</remarks>
</Docs>
</Member>
<Member MemberName="AcceptMessageSessionAsync">
<MemberSignature Language="C#" Value="public System.Threading.Tasks.Task<Microsoft.Azure.ServiceBus.IMessageSession> AcceptMessageSessionAsync (string sessionId);" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class System.Threading.Tasks.Task`1<class Microsoft.Azure.ServiceBus.IMessageSession> AcceptMessageSessionAsync(string sessionId) cil managed" />
<MemberSignature Language="DocId" Value="M:Microsoft.Azure.ServiceBus.ISessionClient.AcceptMessageSessionAsync(System.String)" />
<MemberSignature Language="VB.NET" Value="Public Function AcceptMessageSessionAsync (sessionId As String) As Task(Of IMessageSession)" />
<MemberSignature Language="F#" Value="abstract member AcceptMessageSessionAsync : string -> System.Threading.Tasks.Task<Microsoft.Azure.ServiceBus.IMessageSession>" Usage="iSessionClient.AcceptMessageSessionAsync sessionId" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyName>Microsoft.Azure.ServiceBus</AssemblyName>
<AssemblyVersion>5.2.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Threading.Tasks.Task<Microsoft.Azure.ServiceBus.IMessageSession></ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="sessionId" Type="System.String" />
</Parameters>
<Docs>
<param name="sessionId">The sessionId present in all its messages.</param>
<summary>
Gets a particular session object identified by <paramref name="sessionId" /> that can be used to receive messages for that sessionId.
</summary>
<returns>To be added.</returns>
<remarks>All plugins registered on <see cref="T:Microsoft.Azure.ServiceBus.SessionClient" /> will be applied to each <see cref="T:Microsoft.Azure.ServiceBus.MessageSession" /> that is accepted.
Individual sessions can further register additional plugins.</remarks>
</Docs>
</Member>
<Member MemberName="AcceptMessageSessionAsync">
<MemberSignature Language="C#" Value="public System.Threading.Tasks.Task<Microsoft.Azure.ServiceBus.IMessageSession> AcceptMessageSessionAsync (TimeSpan operationTimeout);" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class System.Threading.Tasks.Task`1<class Microsoft.Azure.ServiceBus.IMessageSession> AcceptMessageSessionAsync(valuetype System.TimeSpan operationTimeout) cil managed" />
<MemberSignature Language="DocId" Value="M:Microsoft.Azure.ServiceBus.ISessionClient.AcceptMessageSessionAsync(System.TimeSpan)" />
<MemberSignature Language="VB.NET" Value="Public Function AcceptMessageSessionAsync (operationTimeout As TimeSpan) As Task(Of IMessageSession)" />
<MemberSignature Language="F#" Value="abstract member AcceptMessageSessionAsync : TimeSpan -> System.Threading.Tasks.Task<Microsoft.Azure.ServiceBus.IMessageSession>" Usage="iSessionClient.AcceptMessageSessionAsync operationTimeout" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyName>Microsoft.Azure.ServiceBus</AssemblyName>
<AssemblyVersion>5.2.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Threading.Tasks.Task<Microsoft.Azure.ServiceBus.IMessageSession></ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="operationTimeout" Type="System.TimeSpan" />
</Parameters>
<Docs>
<param name="operationTimeout">Amount of time for which the call should wait for to fetch the next session.</param>
<summary>
Gets a session object of any <see cref="P:Microsoft.Azure.ServiceBus.IMessageSession.SessionId" /> that can be used to receive messages for that sessionId.
</summary>
<returns>To be added.</returns>
<remarks>All plugins registered on <see cref="T:Microsoft.Azure.ServiceBus.SessionClient" /> will be applied to each <see cref="T:Microsoft.Azure.ServiceBus.MessageSession" /> that is accepted.
Individual sessions can further register additional plugins.</remarks>
</Docs>
</Member>
<Member MemberName="AcceptMessageSessionAsync">
<MemberSignature Language="C#" Value="public System.Threading.Tasks.Task<Microsoft.Azure.ServiceBus.IMessageSession> AcceptMessageSessionAsync (string sessionId, TimeSpan operationTimeout);" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class System.Threading.Tasks.Task`1<class Microsoft.Azure.ServiceBus.IMessageSession> AcceptMessageSessionAsync(string sessionId, valuetype System.TimeSpan operationTimeout) cil managed" />
<MemberSignature Language="DocId" Value="M:Microsoft.Azure.ServiceBus.ISessionClient.AcceptMessageSessionAsync(System.String,System.TimeSpan)" />
<MemberSignature Language="VB.NET" Value="Public Function AcceptMessageSessionAsync (sessionId As String, operationTimeout As TimeSpan) As Task(Of IMessageSession)" />
<MemberSignature Language="F#" Value="abstract member AcceptMessageSessionAsync : string * TimeSpan -> System.Threading.Tasks.Task<Microsoft.Azure.ServiceBus.IMessageSession>" Usage="iSessionClient.AcceptMessageSessionAsync (sessionId, operationTimeout)" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyName>Microsoft.Azure.ServiceBus</AssemblyName>
<AssemblyVersion>5.2.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Threading.Tasks.Task<Microsoft.Azure.ServiceBus.IMessageSession></ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="sessionId" Type="System.String" />
<Parameter Name="operationTimeout" Type="System.TimeSpan" />
</Parameters>
<Docs>
<param name="sessionId">The sessionId present in all its messages.</param>
<param name="operationTimeout">Amount of time for which the call should wait for to fetch the next session.</param>
<summary>
Gets a particular session object identified by <paramref name="sessionId" /> that can be used to receive messages for that sessionId.
</summary>
<returns>To be added.</returns>
<remarks>All plugins registered on <see cref="T:Microsoft.Azure.ServiceBus.SessionClient" /> will be applied to each <see cref="T:Microsoft.Azure.ServiceBus.MessageSession" /> that is accepted.
Individual sessions can further register additional plugins.</remarks>
</Docs>
</Member>
<Member MemberName="EntityPath">
<MemberSignature Language="C#" Value="public string EntityPath { get; }" />
<MemberSignature Language="ILAsm" Value=".property instance string EntityPath" />
<MemberSignature Language="DocId" Value="P:Microsoft.Azure.ServiceBus.ISessionClient.EntityPath" />
<MemberSignature Language="VB.NET" Value="Public ReadOnly Property EntityPath As String" />
<MemberSignature Language="F#" Value="member this.EntityPath : string" Usage="Microsoft.Azure.ServiceBus.ISessionClient.EntityPath" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyName>Microsoft.Azure.ServiceBus</AssemblyName>
<AssemblyVersion>5.2.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.String</ReturnType>
</ReturnValue>
<Docs>
<summary>
Gets the path of the entity. This is either the name of the queue, or the full path of the subscription.
</summary>
<value>To be added.</value>
<remarks>To be added.</remarks>
</Docs>
</Member>
</Members>
</Type>