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.4 2007/05/17 17:46:49 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_URL_FORMAT, 
00185         EDG_WLL_ERROR_MD5_CLASH, 
00186         EDG_WLL_ERROR_GSS, 
00187         EDG_WLL_ERROR_DNS, 
00188         EDG_WLL_ERROR_NOJOBID,  
00189         EDG_WLL_ERROR_NOINDEX,  
00190         EDG_WLL_IL_PROTO,       
00191         EDG_WLL_IL_SYS,         
00192         EDG_WLL_IL_EVENTS_WAITING, 
00193         EDG_WLL_ERROR_COMPARE_EVENTS, 
00194         EDG_WLL_ERROR_SQL_PARSE, 
00195 } edg_wll_ErrorCode;
00196 
00207 int edg_wll_Error(
00208         edg_wll_Context context,
00209         char            **errText,
00210         char            **errDesc
00211 );
00212 
00215 char * edg_wll_SourceToString(edg_wll_Source src);
00216 
00220 edg_wll_Source edg_wll_StringToSource(const char *name);
00221 
00224 char * edg_wll_QResultToString(edg_wll_QueryResults res);
00225 
00229 edg_wll_QueryResults edg_wll_StringToQResult(const char *name);
00230 
00234 #define EDG_WLL_SEQ_NORMAL      1
00235 #define EDG_WLL_SEQ_DUPLICATE   11
00236 #define EDG_WLL_SEQ_PBS         2
00237 #define EDG_WLL_SEQ_CONDOR      3
00238 
00242 #define EDG_WLL_SEQ_BIGHELPER_INITIAL   "UI=000002:NS=0000000000:WM=000000:BH=0000000001:JSS=000000:LM=000000:LRMS=000000:APP=000000:LBS=000000"
00243 
00248 #define EDG_WLL_SEQ_CLEAR       "UI=000009:NS=0000096669:WM=000000:BH=0000000000:JSS=000000:LM=000000:LRMS=000000:APP=000000:LBS=000000"
00249 
00254 #define EDG_WLL_SEQ_ABORT       "UI=000000:NS=0000096660:WM=000000:BH=0000000000:JSS=000000:LM=000000:LRMS=000000:APP=000000:LBS=000000"
00255 
00256 
00258 char * edg_wll_GetSequenceCode(
00259         const edg_wll_Context   context
00260 );
00261 
00265 int edg_wll_GetLoggingJob(
00266         const edg_wll_Context   context,
00267         edg_wlc_JobId   *jobid_out
00268 );
00269 
00270 /*
00271  *@} end of group
00272  */
00273 
00274 #ifdef __cplusplus
00275 }
00276 #endif
00277 
00278 #endif 

Generated on Wed Jun 27 13:43:04 2007 for Glite LB Client: C - Interface by doxygen 1.3.5