Class DUDPServer

Inherits from:
Object
Declared in:
DUDPServer.h

Class Hierarchy

    Object
      |
      +---DUDPServer

Class Description

The DUDPServer class implements a number of methods for implementing a UDP server. (Note: this class assumes that the socket is blocking)

Example:
#include <stdio.h>
#include "ofc/DUDPServer.h"
#include "ofc/DSocketAddress.h"

@interface MyServer : DUDPServer
{
}

- (BOOL) handleRequest :(DData *) request :(DData *) response;

@end

@implementation MyServer

- (BOOL) handleRequest :(DData *) request :(DData *) response
{
  DText *str;

  str = [request toText];              // Print the response
  printf("Server receives the request:%s\n", [str cstring]);
  [str free];

  printf(".. and sends the response: Nice weather.\n");

  [response set :"Nice weather" :12];  // Send the response

  return YES;                          // Example stop the server
}

@end

int main(int argc, char *argv[])
{
  MyServer           *srvr = [MyServer       new];
  DInetSocketAddress *addr = [DInetSocketAddress new];

  [addr any :7000];                    // Setup the address for the server

  printf("Open the server..\n");

  if ([srvr open :[addr family] :[DSocket protocol :"udp"]])
  {
    printf("Start the server (and for a client connection) ..\n");

    if (![srvr start :addr])
      printf("Could not start the server ..\n");
  }
  else
    printf("Could not open the server ..\n");

  [srvr free];                         // Cleanup
  [addr free];

  return 0;
}
Last modified:
11-Aug-2008 (DUDPServer.h)

Instance Variables

private DSocket *_local
the local socket
private int _sendFlag
the send flag (def. 0)
private int _recvFlag
the receive flag (def. 0)
private unsigned _recvLength
the length used during receiving of requests (def. 1024)
private id <DSocketAddressable> _peer
the peer address

Method Index


generated 06-Sep-2008 by ObjcDoc 3.0.0