Main Page | Modules | Data Structures | File List | Data Fields | Globals

context.h

Go to the documentation of this file.
00001 #ifndef _EDG_WORKLOAD_LOGGING_CLIENT_CONTEXT_H
00002 #define _EDG_WORKLOAD_LOGGING_CLIENT_CONTEXT_H
00003 
00009 #ifndef LB_STANDALONE
00010 #include "glite/wmsutils/exception/exception_codes.h"
00011 #endif
00012 #include "glite/wmsutils/jobid/cjobid.h"
00013 
00014 #ident "$Header: /cvs/glite/org.glite.lb.client-interface/interface/Attic/context.h,v 1.21.2.5 2007/06/14 08:45:29 jpospi Exp $"
00015 
00016 #ifdef __cplusplus
00017 extern "C" {
00018 #endif
00019 
00027 typedef struct _edg_wll_Context *edg_wll_Context;
00028 
00030 typedef enum _edg_wll_ContextParam {
00031         EDG_WLL_PARAM_HOST,             
00032         EDG_WLL_PARAM_SOURCE,           
00033         EDG_WLL_PARAM_INSTANCE,         
00034         EDG_WLL_PARAM_LEVEL,            
00035         EDG_WLL_PARAM_DESTINATION,      
00036         EDG_WLL_PARAM_DESTINATION_PORT, 
00037         EDG_WLL_PARAM_LOG_TIMEOUT,      
00038         EDG_WLL_PARAM_LOG_SYNC_TIMEOUT, 
00039         EDG_WLL_PARAM_QUERY_SERVER,     
00040         EDG_WLL_PARAM_QUERY_SERVER_PORT,
00041         EDG_WLL_PARAM_QUERY_SERVER_OVERRIDE,
00042         EDG_WLL_PARAM_QUERY_TIMEOUT,    
00043         EDG_WLL_PARAM_QUERY_JOBS_LIMIT, 
00044         EDG_WLL_PARAM_QUERY_EVENTS_LIMIT,
00045         EDG_WLL_PARAM_QUERY_RESULTS,    
00046         EDG_WLL_PARAM_CONNPOOL_SIZE,    
00047         EDG_WLL_PARAM_NOTIF_SERVER,     
00048         EDG_WLL_PARAM_NOTIF_SERVER_PORT,
00049         EDG_WLL_PARAM_NOTIF_TIMEOUT,    
00050         EDG_WLL_PARAM_X509_PROXY,       
00051         EDG_WLL_PARAM_X509_KEY,         
00052         EDG_WLL_PARAM_X509_CERT,        
00053         EDG_WLL_PARAM_LBPROXY_STORE_SOCK,
00054         EDG_WLL_PARAM_LBPROXY_SERVE_SOCK,
00055         EDG_WLL_PARAM_LBPROXY_USER,     
00056         EDG_WLL_PARAM_JPREG_TMPDIR,             
00057         EDG_WLL_PARAM__LAST,            
00058 } edg_wll_ContextParam;
00059 
00061 typedef enum _edg_wll_QueryResults {
00062         EDG_WLL_QUERYRES_UNDEF,         /* uninitialized value */
00063         EDG_WLL_QUERYRES_NONE,
00064         EDG_WLL_QUERYRES_ALL,
00065         EDG_WLL_QUERYRES_LIMITED,
00066         EDG_WLL_QUERYRES__LAST          /* marker, for internal use only */
00067 } edg_wll_QueryResults;
00068 
00070 typedef enum _edg_wll_Source {
00071         EDG_WLL_SOURCE_NONE,            /* uninitialized value */
00072         EDG_WLL_SOURCE_USER_INTERFACE,
00073         EDG_WLL_SOURCE_NETWORK_SERVER,
00074         EDG_WLL_SOURCE_WORKLOAD_MANAGER,
00075         EDG_WLL_SOURCE_BIG_HELPER,
00076         EDG_WLL_SOURCE_JOB_SUBMISSION,
00077         EDG_WLL_SOURCE_LOG_MONITOR,
00078         EDG_WLL_SOURCE_LRMS,
00079         EDG_WLL_SOURCE_APPLICATION,
00080         EDG_WLL_SOURCE_LB_SERVER,
00081         EDG_WLL_SOURCE__LAST            /* marker, for internal use only */
00082 } edg_wll_Source;
00083 
00086 #define EDG_WLL_SOURCE_WM_PROXY EDG_WLL_SOURCE_NETWORK_SERVER
00087 
00088 
00093 int edg_wll_InitContext(edg_wll_Context *context);
00094 
00099 void edg_wll_FreeContext(edg_wll_Context context);
00100 
00108 int edg_wll_SetParam(
00109         edg_wll_Context context,
00110         edg_wll_ContextParam param,
00111         ...
00112 );
00113 
00114 struct timeval; /* XXX: gcc, shut up! */
00115 
00123 int edg_wll_SetParamInt(edg_wll_Context ctx,edg_wll_ContextParam param,int val);
00124 
00132 int edg_wll_SetParamString(edg_wll_Context ctx,edg_wll_ContextParam param,const char *val);
00133 
00141 int edg_wll_SetParamTime(edg_wll_Context ctx,edg_wll_ContextParam param,const struct timeval *val);
00142 
00150 int edg_wll_GetParam(
00151         edg_wll_Context context,
00152         edg_wll_ContextParam param,
00153         ...
00154 );
00155 
00156 
00163 /* XXX: cleanup required */
00164 
00165 #ifndef GLITE_WMS_LOGGING_ERROR_BASE
00166 #define GLITE_WMS_LOGGING_ERROR_BASE 1400
00167 #endif
00168 
00169 typedef enum _edg_wll_ErrorCode {
00171         EDG_WLL_ERROR_BASE = GLITE_WMS_LOGGING_ERROR_BASE,
00172         EDG_WLL_ERROR_PARSE_BROKEN_ULM, 
00173         EDG_WLL_ERROR_PARSE_EVENT_UNDEF, 
00174         EDG_WLL_ERROR_PARSE_MSG_INCOMPLETE, 
00175         EDG_WLL_ERROR_PARSE_KEY_DUPLICITY, 
00176         EDG_WLL_ERROR_PARSE_KEY_MISUSE, 
00177         EDG_WLL_ERROR_PARSE_OK_WITH_EXTRA_FIELDS, 
00179         EDG_WLL_ERROR_XML_PARSE, 
00180         EDG_WLL_ERROR_SERVER_RESPONSE, 
00181         EDG_WLL_ERROR_JOBID_FORMAT, 
00182         EDG_WLL_ERROR_DB_CALL, 
00184         EDG_WLL_ERROR_MD5_CLASH, 
00185         EDG_WLL_ERROR_GSS, 
00186         EDG_WLL_ERROR_DNS, 
00187         EDG_WLL_ERROR_NOJOBID,  
00188         EDG_WLL_ERROR_NOINDEX,  
00189         EDG_WLL_IL_PROTO,       
00190         EDG_WLL_IL_SYS,         
00191         EDG_WLL_IL_EVENTS_WAITING, 
00192         EDG_WLL_ERROR_COMPARE_EVENTS, 
00193 } edg_wll_ErrorCode;
00194 
00205 int edg_wll_Error(
00206         edg_wll_Context context,
00207         char            **errText,
00208         char            **errDesc
00209 );
00210 
00213 char * edg_wll_SourceToString(edg_wll_Source src);
00214 
00218 edg_wll_Source edg_wll_StringToSource(const char *name);
00219 
00222 char * edg_wll_QResultToString(edg_wll_QueryResults res);
00223 
00227 edg_wll_QueryResults edg_wll_StringToQResult(const char *name);
00228 
00232 #define EDG_WLL_SEQ_NORMAL      1
00233 #define EDG_WLL_SEQ_DUPLICATE   11
00234 #define EDG_WLL_SEQ_PBS         2
00235 #define EDG_WLL_SEQ_CONDOR      3
00236 
00240 #define EDG_WLL_SEQ_BIGHELPER_INITIAL   "UI=000002:NS=0000000000:WM=000000:BH=0000000001:JSS=000000:LM=000000:LRMS=000000:APP=000000:LBS=000000"
00241 
00246 #define EDG_WLL_SEQ_CLEAR       "UI=000009:NS=0000096669:WM=000000:BH=0000000000:JSS=000000:LM=000000:LRMS=000000:APP=000000:LBS=000000"
00247 
00252 #define EDG_WLL_SEQ_ABORT       "UI=000000:NS=0000096660:WM=000000:BH=0000000000:JSS=000000:LM=000000:LRMS=000000:APP=000000:LBS=000000"
00253 
00254 
00256 char * edg_wll_GetSequenceCode(
00257         const edg_wll_Context   context
00258 );
00259 
00263 int edg_wll_GetLoggingJob(
00264         const edg_wll_Context   context,
00265         edg_wlc_JobId   *jobid_out
00266 );
00267 
00268 /*
00269  *@} end of group
00270  */
00271 
00272 #ifdef __cplusplus
00273 }
00274 #endif
00275 
00276 #endif 

Generated on Mon May 5 15:16:51 2008 for Glite LB Client: C - Interface by  doxygen 1.3.9.1