Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

ClientWriteCallback.h

00001 /*
00002  * Copyright 2003 Michael A. Marsh, Cornell University. All rights reserved.
00003  * This software is released under the modified BSD license.
00004  * See the file LICENSE in the top-level directory for details.
00005  */
00006 //
00007 // $Id: ClientWriteCallback.h,v 1.4 2004/05/19 15:56:51 mmarsh Exp $
00008 //
00009 // $Log: ClientWriteCallback.h,v $
00010 // Revision 1.4  2004/05/19 15:56:51  mmarsh
00011 // *** empty log message ***
00012 //
00013 // Revision 1.3  2003/11/04 22:31:49  mmarsh
00014 // *** empty log message ***
00015 //
00016 //
00017 
00018 #ifndef __CODEX_KEYSERVICE_CLIENTWRITECALLBACK_H__
00019 #define __CODEX_KEYSERVICE_CLIENTWRITECALLBACK_H__
00020 
00021 #include <map>
00022 
00023 #include "ResponseCallback.h"
00024 #include "CODEX_Events/Activity.h"
00025 #include "CODEX_ASN1/Array.h"
00026 #include "CODEX_Client/Message.h"
00027 #include "CODEX_Server/ServerSignature.h"
00028 #include "CODEX_Server/SignRequestHandler.h"
00029 #include "ClientResponseHandler.h"
00030 #include "StateInfo.h"
00031 #include "CODEX_Server/ServerState.h"
00032 
00033 namespace CODEX_KeyService
00034 {
00040    class ClientWriteCallback : public ResponseCallback,
00041                                public CODEX_Events::Activity
00042    {
00043       public :
00045          typedef CODEX_ASN1::Array< CODEX_Server::ServerSignature >
00046          ServerArray;
00047 
00049          ClientWriteCallback( CODEX_Events::DeadPileType& deadPile,
00050                               CODEX_Events::QType& eventQueue,
00051                               CODEX_Server::SignRequestHandler* destination,
00052                               ClientResponseHandler* clientAct,
00053                               const CODEX_Client::SignedWriteKeyMsg& req,
00054                               const unsigned char* seqNum );
00055 
00057          virtual ~ClientWriteCallback();
00058 
00059          bool operator()( unsigned int server, CODEX_Quorum::Message* msg );
00060 
00061       private :
00062          CODEX_Server::SignRequestHandler*  m_destination;
00063          ClientResponseHandler*             m_clientAct;
00064          CODEX_Client::SignedWriteKeyMsg    m_request;
00065          BIGNUM *                           m_digest;
00066          ServerArray                        m_evidence;
00067          bool                               m_complete;
00068    };
00069 
00070 }
00071 
00072 #endif /* __CODEX_KEYSERVICE_CLIENTWRITECALLBACK_H__ */

Generated on Fri May 6 17:38:55 2005 for COrnell Data EXchange (CODEX) by  doxygen 1.4.1