←Select platform

Execute Property

Summary

Decides whether the processing of client request data has been completed.

Syntax

C#
VB
C++
public bool Execute {get;}
Public ReadOnly Property Execute As Boolean
public: 
property bool Execute { 
   bool get(); 
} 

Property Value

true if more data need to be processed to decode a complete HTTP request; otherwise false.

Remarks

Use this property in conjunction with the Process method if you are reading chunks of data. You should keep reading the chunks until this property return false.

Example

C#
VB
Imports Leadtools 
Imports Leadtools.Codecs 
Imports Leadtools.Jpip 
Imports Leadtools.Jpip.HttpServer 
Imports Leadtools.Jpip.RequestDecoder 
Imports Leadtools.Jpip.RequestEncoder 
Imports Leadtools.Jpip.Client.WinForms 
Imports Leadtools.Jpip.Client.InteractiveDecoder 
Imports Leadtools.Jpip.Server 
Imports Leadtools.Jpip.Logging 
 
Public Class HttpServerCommunication 
   Public Sub ProcessClientRequests() 
      Dim clientRequest As HttpClientRequest = Nothing 
      Dim decoder As HttpRequestDecoder = Nothing 
      Dim client As Socket 
 
      client = GetClientSocket() 
      clientRequest = New HttpClientRequest() 
      Dim clientData As Byte() 
 
      Dim received As Integer 
 
      Do 
         clientData = New Byte(client.ReceiveBufferSize - 1) {} 
 
         received = client.Receive(clientData) 
 
 
         clientRequest.Process(clientData, 0, received) 
 
      Loop While clientRequest.Execute 'receive data until a complete request is received 
 
      Console.WriteLine("Client request received: {0}", clientRequest.CompleteMessage) 
 
      File.WriteAllBytes(Path.Combine(LEAD_VARS.ImagesDir, "ServerRequests.dat"), clientRequest.BodyData) 
      decoder = New HttpRequestDecoder(clientRequest) 
 
      Console.WriteLine("Server will process client image {0}", decoder.Fields.RequestTargetFields.Target) 
 
 
      'Process client request... 
      '... 
 
      client.Close() 
   End Sub 
 
   Private Function GetClientSocket() As Socket 
 
      Dim listenSocket As Socket = New Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp) 
 
      Dim hostIP As IPAddress = IPAddress.Parse("127.0.0.1") 
      Dim port As Integer = 107 
 
      Dim ep As IPEndPoint = New IPEndPoint(hostIP, port) 
 
      listenSocket.Bind(ep) 
 
      ' start listening 
      listenSocket.Listen(10) 
 
      'a client should send a request to the listening address 
      Dim client As Socket = listenSocket.Accept() 
 
      listenSocket.Close() 
 
      Return client 
   End Function 
End Class 
 
Public NotInheritable Class LEAD_VARS 
Public Const ImagesDir As String = "C:\Users\Public\Documents\LEADTOOLS Images" 
End Class 
using Leadtools; 
         using Leadtools.Codecs; 
         using Leadtools.Jpip; 
         using Leadtools.Jpip.HttpServer ; 
         using Leadtools.Jpip.RequestDecoder ; 
         using Leadtools.Jpip.RequestEncoder ; 
         using Leadtools.Jpip.Client.WinForms; 
         using Leadtools.Jpip.Client.InteractiveDecoder; 
         using Leadtools.Jpip.Server; 
         using Leadtools.Jpip.Logging; 
 
         public void ProcessClientRequests() 
         { 
#if LEADTOOLS_V175_OR_LATER 
            Leadtools.Examples.Support.SetLicense(); 
#else 
            Leadtools.Examples.Support.Unlock(); 
#endif // #if LEADTOOLS_V175_OR_LATER 
            HttpClientRequest clientRequest = null; 
            HttpRequestDecoder decoder = null; 
            Socket client; 
            client = GetClientSocket(); 
            clientRequest = new HttpClientRequest(); 
            byte[] clientData ; 
            int received; 
            do 
            { 
               clientData = new byte[client.ReceiveBufferSize]; 
               received = client.Receive(clientData); 
               clientRequest.Process(clientData, 0,  received); 
            } while (clientRequest.Execute); //receive data until a complete request is received 
 
            Console.WriteLine( "Client request received: {0}", clientRequest.CompleteMessage); 
            File.WriteAllBytes(Path.Combine(LEAD_VARS.ImagesDir, "ServerRequests.dat"), clientRequest.BodyData); 
            decoder = new HttpRequestDecoder(clientRequest); 
            Console.WriteLine( "Server will process client image {0}", decoder.Fields.RequestTargetFields.Target); 
            //Process client request... 
            client.Close(); 
         } 
 
         private Socket GetClientSocket() 
         { 
            Socket listenSocket = new Socket( AddressFamily.InterNetwork, 
                                              SocketType.Stream, 
                                              ProtocolType.Tcp); 
            IPAddress hostIP = IPAddress.Parse("127.0.0.1"); 
            int port = 107; 
            IPEndPoint ep = new IPEndPoint(hostIP, port); 
            listenSocket.Bind(ep); 
            // start listening 
            listenSocket.Listen(10); 
            //a client should send a request to the listening address 
            Socket _client = listenSocket.Accept(); 
            listenSocket.Close(); 
            return _client; 
         } 
 
         static class LEAD_VARS 
         { 
         public const string ImagesDir = @"C:\Users\Public\Documents\LEADTOOLS Images"; 
         } 

Requirements

Target Platforms

Products | Support | Contact Us | Copyright Notices
© 1991-2017 LEAD Technologies, Inc. All Rights Reserved.
Leadtools.Jpip.Server Assembly
Click or drag to resize