00001 #ifndef __EDG_WORKLOAD_LOGGING_CLIENT_EVENTS_H__
00002 #define __EDG_WORKLOAD_LOGGING_CLIENT_EVENTS_H__
00003
00008 #ident "$Header: /cvs/glite/org.glite.lb.client-interface/interface/Attic/events.h.T,v 1.6.2.1 2007/05/17 17:46:49 jpospi Exp $"
00009
00010
00011
00012
00013
00014
00015
00016
00017 #include <sys/time.h>
00018 #include <inttypes.h>
00019
00020 #include "glite/wmsutils/jobid/cjobid.h"
00021 #include "glite/lb/context.h"
00022 #include "glite/lb/notifid.h"
00023
00024 #ifdef __cplusplus
00025 extern "C" {
00026 #endif
00027
00038 typedef char *edg_wll_LogLine;
00039
00040
00045 typedef enum _edg_wll_EventCode {
00047 EDG_WLL_EVENT_UNDEF = 0,
00048 EDG_WLL_EVENT_TRANSFER,
00049 EDG_WLL_EVENT_ACCEPTED,
00050 EDG_WLL_EVENT_REFUSED,
00051 EDG_WLL_EVENT_ENQUEUED,
00052 EDG_WLL_EVENT_DEQUEUED,
00053 EDG_WLL_EVENT_HELPERCALL,
00054 EDG_WLL_EVENT_HELPERRETURN,
00055 EDG_WLL_EVENT_RUNNING,
00056 EDG_WLL_EVENT_RESUBMISSION,
00057 EDG_WLL_EVENT_DONE,
00058 EDG_WLL_EVENT_CANCEL,
00059 EDG_WLL_EVENT_ABORT,
00060 EDG_WLL_EVENT_CLEAR,
00061 EDG_WLL_EVENT_PURGE,
00062 EDG_WLL_EVENT_MATCH,
00063 EDG_WLL_EVENT_PENDING,
00064 EDG_WLL_EVENT_REGJOB,
00065 EDG_WLL_EVENT_CHKPT,
00066 EDG_WLL_EVENT_LISTENER,
00067 EDG_WLL_EVENT_CURDESCR,
00068 EDG_WLL_EVENT_USERTAG,
00069 EDG_WLL_EVENT_CHANGEACL,
00070 EDG_WLL_EVENT_NOTIFICATION,
00071 EDG_WLL_EVENT_RESOURCEUSAGE,
00072 EDG_WLL_EVENT_REALLYRUNNING,
00073 EDG_WLL_EVENT_SUSPEND,
00074 EDG_WLL_EVENT_RESUME,
00075 EDG_WLL_EVENT_COLLECTIONSTATE,
00076 EDG_WLL_EVENT_PBSQUEUED,
00077 EDG_WLL_EVENT_PBSMATCH,
00078 EDG_WLL_EVENT_PBSPENDING,
00079 EDG_WLL_EVENT_PBSRUN,
00080 EDG_WLL_EVENT_PBSRERUN,
00081 EDG_WLL_EVENT_PBSDONE,
00082 EDG_WLL_EVENT_PBSDEQUEUED,
00083 EDG_WLL_EVENT_PBSRESOURCEUSAGE,
00084 EDG_WLL_EVENT_PBSERROR,
00085 EDG_WLL_EVENT_CONDORMATCH,
00086 EDG_WLL_EVENT_CONDORREJECT,
00087 EDG_WLL_EVENT_CONDORSHADOWSTARTED,
00088 EDG_WLL_EVENT_CONDORSHADOWEXITED,
00089 EDG_WLL_EVENT_CONDORSTARTERSTARTED,
00090 EDG_WLL_EVENT_CONDORSTARTEREXITED,
00091 EDG_WLL_EVENT_CONDORRESOURCEUSAGE,
00092 EDG_WLL_EVENT_CONDORERROR,
00093 EDG_WLL_EVENT__LAST,
00094 } edg_wll_EventCode;
00095
00103 extern edg_wll_EventCode edg_wll_StringToEvent(const char *name);
00104
00112 extern char *edg_wll_EventToString(edg_wll_EventCode event);
00113
00114
00119 typedef enum _edg_wll_KeyNameCode {
00120 UNDEFINED,
00121 EDG_WLL_EVNT,
00122 ULM_DATE,
00123 ULM_ARR_DATE,
00124 ULM_HOST,
00125 ULM_LVL,
00126 EDG_WLL_COMMON_PRIORITY,
00127 EDG_WLL_COMMON_JOBID,
00128 EDG_WLL_COMMON_SEQCODE,
00129 EDG_WLL_COMMON_USER,
00130 EDG_WLL_COMMON_SOURCE,
00131 EDG_WLL_COMMON_SRC_INSTANCE,
00132 EDG_WLL_TRANSFER_DESTINATION,
00133 EDG_WLL_TRANSFER_DEST_HOST,
00134 EDG_WLL_TRANSFER_DEST_INSTANCE,
00135 EDG_WLL_TRANSFER_JOB,
00136 EDG_WLL_TRANSFER_RESULT,
00137 EDG_WLL_TRANSFER_REASON,
00138 EDG_WLL_TRANSFER_DEST_JOBID,
00139 EDG_WLL_ACCEPTED_FROM,
00140 EDG_WLL_ACCEPTED_FROM_HOST,
00141 EDG_WLL_ACCEPTED_FROM_INSTANCE,
00142 EDG_WLL_ACCEPTED_LOCAL_JOBID,
00143 EDG_WLL_REFUSED_FROM,
00144 EDG_WLL_REFUSED_FROM_HOST,
00145 EDG_WLL_REFUSED_FROM_INSTANCE,
00146 EDG_WLL_REFUSED_REASON,
00147 EDG_WLL_ENQUEUED_QUEUE,
00148 EDG_WLL_ENQUEUED_JOB,
00149 EDG_WLL_ENQUEUED_RESULT,
00150 EDG_WLL_ENQUEUED_REASON,
00151 EDG_WLL_DEQUEUED_QUEUE,
00152 EDG_WLL_DEQUEUED_LOCAL_JOBID,
00153 EDG_WLL_HELPERCALL_HELPER_NAME,
00154 EDG_WLL_HELPERCALL_HELPER_PARAMS,
00155 EDG_WLL_HELPERCALL_SRC_ROLE,
00156 EDG_WLL_HELPERRETURN_HELPER_NAME,
00157 EDG_WLL_HELPERRETURN_RETVAL,
00158 EDG_WLL_HELPERRETURN_SRC_ROLE,
00159 EDG_WLL_RUNNING_NODE,
00160 EDG_WLL_RESUBMISSION_RESULT,
00161 EDG_WLL_RESUBMISSION_REASON,
00162 EDG_WLL_RESUBMISSION_TAG,
00163 EDG_WLL_DONE_STATUS_CODE,
00164 EDG_WLL_DONE_REASON,
00165 EDG_WLL_DONE_EXIT_CODE,
00166 EDG_WLL_CANCEL_STATUS_CODE,
00167 EDG_WLL_CANCEL_REASON,
00168 EDG_WLL_ABORT_REASON,
00169 EDG_WLL_CLEAR_REASON,
00170 EDG_WLL_MATCH_DEST_ID,
00171 EDG_WLL_PENDING_REASON,
00172 EDG_WLL_REGJOB_JDL,
00173 EDG_WLL_REGJOB_NS,
00174 EDG_WLL_REGJOB_PARENT,
00175 EDG_WLL_REGJOB_JOBTYPE,
00176 EDG_WLL_REGJOB_NSUBJOBS,
00177 EDG_WLL_REGJOB_SEED,
00178 EDG_WLL_CHKPT_TAG,
00179 EDG_WLL_CHKPT_CLASSAD,
00180 EDG_WLL_LISTENER_SVC_NAME,
00181 EDG_WLL_LISTENER_SVC_HOST,
00182 EDG_WLL_LISTENER_SVC_PORT,
00183 EDG_WLL_CURDESCR_DESCR,
00184 EDG_WLL_USERTAG_NAME,
00185 EDG_WLL_USERTAG_VALUE,
00186 EDG_WLL_CHANGEACL_USER_ID,
00187 EDG_WLL_CHANGEACL_USER_ID_TYPE,
00188 EDG_WLL_CHANGEACL_PERMISSION,
00189 EDG_WLL_CHANGEACL_PERMISSION_TYPE,
00190 EDG_WLL_CHANGEACL_OPERATION,
00191 EDG_WLL_NOTIFICATION_NOTIFID,
00192 EDG_WLL_NOTIFICATION_OWNER,
00193 EDG_WLL_NOTIFICATION_DEST_HOST,
00194 EDG_WLL_NOTIFICATION_DEST_PORT,
00195 EDG_WLL_NOTIFICATION_JOBSTAT,
00196 EDG_WLL_RESOURCEUSAGE_RESOURCE,
00197 EDG_WLL_RESOURCEUSAGE_QUANTITY,
00198 EDG_WLL_RESOURCEUSAGE_UNIT,
00199 EDG_WLL_REALLYRUNNING_WN_SEQ,
00200 EDG_WLL_SUSPEND_REASON,
00201 EDG_WLL_RESUME_REASON,
00202 EDG_WLL_COLLECTIONSTATE_STATE,
00203 EDG_WLL_COLLECTIONSTATE_DONE_CODE,
00204 EDG_WLL_COLLECTIONSTATE_HISTOGRAM,
00205 EDG_WLL_COLLECTIONSTATE_CHILD,
00206 EDG_WLL_COLLECTIONSTATE_CHILD_EVENT,
00207 EDG_WLL_PBSQUEUED_QUEUE,
00208 EDG_WLL_PBSQUEUED_OWNER,
00209 EDG_WLL_PBSQUEUED_NAME,
00210 EDG_WLL_PBSMATCH_DEST_HOST,
00211 EDG_WLL_PBSPENDING_REASON,
00212 EDG_WLL_PBSRUN_SCHEDULER,
00213 EDG_WLL_PBSRUN_DEST_HOST,
00214 EDG_WLL_PBSRUN_PID,
00215 EDG_WLL_PBSDONE_EXIT_STATUS,
00216 EDG_WLL_PBSRESOURCEUSAGE_USAGE,
00217 EDG_WLL_PBSRESOURCEUSAGE_NAME,
00218 EDG_WLL_PBSRESOURCEUSAGE_QUANTITY,
00219 EDG_WLL_PBSRESOURCEUSAGE_UNIT,
00220 EDG_WLL_PBSERROR_ERROR_DESC,
00221 EDG_WLL_CONDORMATCH_OWNER,
00222 EDG_WLL_CONDORMATCH_DEST_HOST,
00223 EDG_WLL_CONDORMATCH_PREEMPTING,
00224 EDG_WLL_CONDORREJECT_OWNER,
00225 EDG_WLL_CONDORREJECT_STATUS_CODE,
00226 EDG_WLL_CONDORSHADOWSTARTED_SHADOW_HOST,
00227 EDG_WLL_CONDORSHADOWSTARTED_SHADOW_PORT,
00228 EDG_WLL_CONDORSHADOWSTARTED_SHADOW_PID,
00229 EDG_WLL_CONDORSHADOWSTARTED_SHADOW_STATUS,
00230 EDG_WLL_CONDORSHADOWEXITED_SHADOW_PID,
00231 EDG_WLL_CONDORSHADOWEXITED_SHADOW_EXIT_STATUS,
00232 EDG_WLL_CONDORSTARTERSTARTED_STARTER_PID,
00233 EDG_WLL_CONDORSTARTERSTARTED_UNIVERSE,
00234 EDG_WLL_CONDORSTARTEREXITED_STARTER_PID,
00235 EDG_WLL_CONDORSTARTEREXITED_STARTER_EXIT_STATUS,
00236 EDG_WLL_CONDORSTARTEREXITED_JOB_PID,
00237 EDG_WLL_CONDORSTARTEREXITED_JOB_EXIT_STATUS,
00238 EDG_WLL_CONDORRESOURCEUSAGE_USAGE,
00239 EDG_WLL_CONDORRESOURCEUSAGE_NAME,
00240 EDG_WLL_CONDORRESOURCEUSAGE_QUANTITY,
00241 EDG_WLL_CONDORRESOURCEUSAGE_UNIT,
00242 EDG_WLL_CONDORERROR_ERROR_DESC,
00243 EDG_WLL_INTERNAL_TYPE,
00244 } edg_wll_KeyNameCode;
00245
00253 extern edg_wll_KeyNameCode edg_wll_StringToKeyName(const char *name);
00254
00262 extern char *edg_wll_KeyNameToString(edg_wll_KeyNameCode key);
00263
00264
00274 enum edg_wll_Level {
00275 EDG_WLL_LEVEL_UNDEFINED,
00276 EDG_WLL_LEVEL_EMERGENCY,
00277 EDG_WLL_LEVEL_ALERT,
00278 EDG_WLL_LEVEL_ERROR,
00279 EDG_WLL_LEVEL_WARNING,
00280 EDG_WLL_LEVEL_AUTH,
00281 EDG_WLL_LEVEL_SECURITY,
00282 EDG_WLL_LEVEL_USAGE,
00283 EDG_WLL_LEVEL_SYSTEM,
00284 EDG_WLL_LEVEL_IMPORTANT,
00285 EDG_WLL_LEVEL_DEBUG,
00286 };
00287
00294 extern enum edg_wll_Level edg_wll_StringToLevel(const char *name);
00295
00302 extern char *edg_wll_LevelToString(enum edg_wll_Level code);
00303
00304
00309 enum edg_wll_TransferResult {
00310 EDG_WLL_TRANSFER_UNDEFINED,
00311 EDG_WLL_TRANSFER_START,
00312 EDG_WLL_TRANSFER_OK,
00313 EDG_WLL_TRANSFER_REFUSED,
00314 EDG_WLL_TRANSFER_FAIL,
00315 };
00316
00323 extern enum edg_wll_TransferResult edg_wll_StringToTransferResult(const char *name);
00324
00331 extern char *edg_wll_TransferResultToString(enum edg_wll_TransferResult code);
00332
00333
00338 enum edg_wll_EnQueuedResult {
00339 EDG_WLL_ENQUEUED_UNDEFINED,
00340 EDG_WLL_ENQUEUED_START,
00341 EDG_WLL_ENQUEUED_OK,
00342 EDG_WLL_ENQUEUED_REFUSED,
00343 EDG_WLL_ENQUEUED_FAIL,
00344 };
00345
00352 extern enum edg_wll_EnQueuedResult edg_wll_StringToEnQueuedResult(const char *name);
00353
00360 extern char *edg_wll_EnQueuedResultToString(enum edg_wll_EnQueuedResult code);
00361
00362
00367 enum edg_wll_HelperCallSrc_role {
00368 EDG_WLL_HELPERCALL_UNDEFINED,
00369 EDG_WLL_HELPERCALL_CALLING,
00370 EDG_WLL_HELPERCALL_CALLED,
00371 };
00372
00379 extern enum edg_wll_HelperCallSrc_role edg_wll_StringToHelperCallSrc_role(const char *name);
00380
00387 extern char *edg_wll_HelperCallSrc_roleToString(enum edg_wll_HelperCallSrc_role code);
00388
00389
00394 enum edg_wll_HelperReturnSrc_role {
00395 EDG_WLL_HELPERRETURN_UNDEFINED,
00396 EDG_WLL_HELPERRETURN_CALLING,
00397 EDG_WLL_HELPERRETURN_CALLED,
00398 };
00399
00406 extern enum edg_wll_HelperReturnSrc_role edg_wll_StringToHelperReturnSrc_role(const char *name);
00407
00414 extern char *edg_wll_HelperReturnSrc_roleToString(enum edg_wll_HelperReturnSrc_role code);
00415
00416
00421 enum edg_wll_ResubmissionResult {
00422 EDG_WLL_RESUBMISSION_UNDEFINED,
00423 EDG_WLL_RESUBMISSION_WILLRESUB,
00424 EDG_WLL_RESUBMISSION_WONTRESUB,
00425 EDG_WLL_RESUBMISSION_SHALLOW,
00426 };
00427
00434 extern enum edg_wll_ResubmissionResult edg_wll_StringToResubmissionResult(const char *name);
00435
00442 extern char *edg_wll_ResubmissionResultToString(enum edg_wll_ResubmissionResult code);
00443
00444
00449 enum edg_wll_DoneStatus_code {
00450 EDG_WLL_DONE_UNDEFINED,
00451 EDG_WLL_DONE_OK,
00452 EDG_WLL_DONE_FAILED,
00453 EDG_WLL_DONE_CANCELLED,
00454 };
00455
00462 extern enum edg_wll_DoneStatus_code edg_wll_StringToDoneStatus_code(const char *name);
00463
00470 extern char *edg_wll_DoneStatus_codeToString(enum edg_wll_DoneStatus_code code);
00471
00472
00477 enum edg_wll_CancelStatus_code {
00478 EDG_WLL_CANCEL_UNDEFINED,
00479 EDG_WLL_CANCEL_REQ,
00480 EDG_WLL_CANCEL_REFUSE,
00481 EDG_WLL_CANCEL_DONE,
00482 EDG_WLL_CANCEL_ABORT,
00483 };
00484
00491 extern enum edg_wll_CancelStatus_code edg_wll_StringToCancelStatus_code(const char *name);
00492
00499 extern char *edg_wll_CancelStatus_codeToString(enum edg_wll_CancelStatus_code code);
00500
00501
00506 enum edg_wll_ClearReason {
00507 EDG_WLL_CLEAR_UNDEFINED,
00508 EDG_WLL_CLEAR_USER,
00509 EDG_WLL_CLEAR_TIMEOUT,
00510 EDG_WLL_CLEAR_NOOUTPUT,
00511 };
00512
00519 extern enum edg_wll_ClearReason edg_wll_StringToClearReason(const char *name);
00520
00527 extern char *edg_wll_ClearReasonToString(enum edg_wll_ClearReason code);
00528
00529
00534 enum edg_wll_RegJobJobtype {
00535 EDG_WLL_REGJOB_UNDEFINED,
00536 EDG_WLL_REGJOB_SIMPLE,
00537 EDG_WLL_REGJOB_DAG,
00538 EDG_WLL_REGJOB_PARTITIONABLE,
00539 EDG_WLL_REGJOB_PARTITIONED,
00540 EDG_WLL_REGJOB_COLLECTION,
00541 EDG_WLL_REGJOB_PBS,
00542 EDG_WLL_REGJOB_CONDOR,
00543 };
00544
00551 extern enum edg_wll_RegJobJobtype edg_wll_StringToRegJobJobtype(const char *name);
00552
00559 extern char *edg_wll_RegJobJobtypeToString(enum edg_wll_RegJobJobtype code);
00560
00561
00566 enum edg_wll_PBSResourceUsageUsage {
00567 EDG_WLL_PBSRESOURCEUSAGE_UNDEFINED,
00568 EDG_WLL_PBSRESOURCEUSAGE_REQUESTED,
00569 EDG_WLL_PBSRESOURCEUSAGE_USED,
00570 };
00571
00578 extern enum edg_wll_PBSResourceUsageUsage edg_wll_StringToPBSResourceUsageUsage(const char *name);
00579
00586 extern char *edg_wll_PBSResourceUsageUsageToString(enum edg_wll_PBSResourceUsageUsage code);
00587
00588
00593 enum edg_wll_CondorRejectStatus_code {
00594 EDG_WLL_CONDORREJECT_UNDEFINED,
00595 EDG_WLL_CONDORREJECT_NOMATCH,
00596 EDG_WLL_CONDORREJECT_OTHER,
00597 };
00598
00605 extern enum edg_wll_CondorRejectStatus_code edg_wll_StringToCondorRejectStatus_code(const char *name);
00606
00613 extern char *edg_wll_CondorRejectStatus_codeToString(enum edg_wll_CondorRejectStatus_code code);
00614
00615
00620 enum edg_wll_CondorResourceUsageUsage {
00621 EDG_WLL_CONDORRESOURCEUSAGE_UNDEFINED,
00622 EDG_WLL_CONDORRESOURCEUSAGE_REQUESTED,
00623 EDG_WLL_CONDORRESOURCEUSAGE_USED,
00624 };
00625
00632 extern enum edg_wll_CondorResourceUsageUsage edg_wll_StringToCondorResourceUsageUsage(const char *name);
00633
00640 extern char *edg_wll_CondorResourceUsageUsageToString(enum edg_wll_CondorResourceUsageUsage code);
00641
00642
00643
00648 #define _EDG_WLL_EVENT_COMMON \
00649 edg_wll_EventCode type;\
00650 struct timeval timestamp; \
00651 struct timeval arrived; \
00652 char * host; \
00653 int level; \
00654 int priority; \
00655 edg_wlc_JobId jobId; \
00656 char * seqcode; \
00657 char * user; \
00658 edg_wll_Source source; \
00659 char * src_instance; \
00660
00661
00666 typedef struct _edg_wll_AnyEvent {
00667 _EDG_WLL_EVENT_COMMON
00668 } edg_wll_AnyEvent;
00669
00670
00679 typedef struct _edg_wll_TransferEvent {
00680 _EDG_WLL_EVENT_COMMON
00681 edg_wll_Source destination;
00682 char * dest_host;
00683 char * dest_instance;
00684 char * job;
00685 enum edg_wll_TransferResult result;
00686 char * reason;
00687 char * dest_jobid;
00688 } edg_wll_TransferEvent;
00689
00694 typedef struct _edg_wll_AcceptedEvent {
00695 _EDG_WLL_EVENT_COMMON
00696 edg_wll_Source from;
00697 char * from_host;
00698 char * from_instance;
00699 char * local_jobid;
00700 } edg_wll_AcceptedEvent;
00701
00706 typedef struct _edg_wll_RefusedEvent {
00707 _EDG_WLL_EVENT_COMMON
00708 edg_wll_Source from;
00709 char * from_host;
00710 char * from_instance;
00711 char * reason;
00712 } edg_wll_RefusedEvent;
00713
00718 typedef struct _edg_wll_EnQueuedEvent {
00719 _EDG_WLL_EVENT_COMMON
00720 char * queue;
00721 char * job;
00722 enum edg_wll_EnQueuedResult result;
00723 char * reason;
00724 } edg_wll_EnQueuedEvent;
00725
00730 typedef struct _edg_wll_DeQueuedEvent {
00731 _EDG_WLL_EVENT_COMMON
00732 char * queue;
00733 char * local_jobid;
00734 } edg_wll_DeQueuedEvent;
00735
00740 typedef struct _edg_wll_HelperCallEvent {
00741 _EDG_WLL_EVENT_COMMON
00742 char * helper_name;
00743 char * helper_params;
00744 enum edg_wll_HelperCallSrc_role src_role;
00745 } edg_wll_HelperCallEvent;
00746
00751 typedef struct _edg_wll_HelperReturnEvent {
00752 _EDG_WLL_EVENT_COMMON
00753 char * helper_name;
00754 char * retval;
00755 enum edg_wll_HelperReturnSrc_role src_role;
00756 } edg_wll_HelperReturnEvent;
00757
00762 typedef struct _edg_wll_RunningEvent {
00763 _EDG_WLL_EVENT_COMMON
00764 char * node;
00765 } edg_wll_RunningEvent;
00766
00771 typedef struct _edg_wll_ResubmissionEvent {
00772 _EDG_WLL_EVENT_COMMON
00773 enum edg_wll_ResubmissionResult result;
00774 char * reason;
00775 char * tag;
00776 } edg_wll_ResubmissionEvent;
00777
00782 typedef struct _edg_wll_DoneEvent {
00783 _EDG_WLL_EVENT_COMMON
00784 enum edg_wll_DoneStatus_code status_code;
00785 char * reason;
00786 int exit_code;
00787 } edg_wll_DoneEvent;
00788
00793 typedef struct _edg_wll_CancelEvent {
00794 _EDG_WLL_EVENT_COMMON
00795 enum edg_wll_CancelStatus_code status_code;
00796 char * reason;
00797 } edg_wll_CancelEvent;
00798
00803 typedef struct _edg_wll_AbortEvent {
00804 _EDG_WLL_EVENT_COMMON
00805 char * reason;
00806 } edg_wll_AbortEvent;
00807
00812 typedef struct _edg_wll_ClearEvent {
00813 _EDG_WLL_EVENT_COMMON
00814 enum edg_wll_ClearReason reason;
00815 } edg_wll_ClearEvent;
00816
00821 typedef struct _edg_wll_PurgeEvent {
00822 _EDG_WLL_EVENT_COMMON
00823 } edg_wll_PurgeEvent;
00824
00829 typedef struct _edg_wll_MatchEvent {
00830 _EDG_WLL_EVENT_COMMON
00831 char * dest_id;
00832 } edg_wll_MatchEvent;
00833
00838 typedef struct _edg_wll_PendingEvent {
00839 _EDG_WLL_EVENT_COMMON
00840 char * reason;
00841 } edg_wll_PendingEvent;
00842
00847 typedef struct _edg_wll_RegJobEvent {
00848 _EDG_WLL_EVENT_COMMON
00849 char * jdl;
00850 char * ns;
00851 edg_wlc_JobId parent;
00852 enum edg_wll_RegJobJobtype jobtype;
00853 int nsubjobs;
00854 char * seed;
00855 } edg_wll_RegJobEvent;
00856
00861 typedef struct _edg_wll_ChkptEvent {
00862 _EDG_WLL_EVENT_COMMON
00863 char * tag;
00864 char * classad;
00865 } edg_wll_ChkptEvent;
00866
00871 typedef struct _edg_wll_ListenerEvent {
00872 _EDG_WLL_EVENT_COMMON
00873 char * svc_name;
00874 char * svc_host;
00875 uint16_t svc_port;
00876 } edg_wll_ListenerEvent;
00877
00882 typedef struct _edg_wll_CurDescrEvent {
00883 _EDG_WLL_EVENT_COMMON
00884 char * descr;
00885 } edg_wll_CurDescrEvent;
00886
00891 typedef struct _edg_wll_UserTagEvent {
00892 _EDG_WLL_EVENT_COMMON
00893 char * name;
00894 char * value;
00895 } edg_wll_UserTagEvent;
00896
00901 typedef struct _edg_wll_ChangeACLEvent {
00902 _EDG_WLL_EVENT_COMMON
00903 char * user_id;
00904 int user_id_type;
00905 int permission;
00906 int permission_type;
00907 int operation;
00908 } edg_wll_ChangeACLEvent;
00909
00914 typedef struct _edg_wll_NotificationEvent {
00915 _EDG_WLL_EVENT_COMMON
00916 edg_wll_NotifId notifId;
00917 char * owner;
00918 char * dest_host;
00919 uint16_t dest_port;
00920 char * jobstat;
00921 } edg_wll_NotificationEvent;
00922
00927 typedef struct _edg_wll_ResourceUsageEvent {
00928 _EDG_WLL_EVENT_COMMON
00929 char * resource;
00930 double quantity;
00931 char * unit;
00932 } edg_wll_ResourceUsageEvent;
00933
00938 typedef struct _edg_wll_ReallyRunningEvent {
00939 _EDG_WLL_EVENT_COMMON
00940 char * wn_seq;
00941 } edg_wll_ReallyRunningEvent;
00942
00947 typedef struct _edg_wll_SuspendEvent {
00948 _EDG_WLL_EVENT_COMMON
00949 char * reason;
00950 } edg_wll_SuspendEvent;
00951
00956 typedef struct _edg_wll_ResumeEvent {
00957 _EDG_WLL_EVENT_COMMON
00958 char * reason;
00959 } edg_wll_ResumeEvent;
00960
00965 typedef struct _edg_wll_CollectionStateEvent {
00966 _EDG_WLL_EVENT_COMMON
00967 char * state;
00968 int done_code;
00969 char * histogram;
00970 edg_wlc_JobId child;
00971 char * child_event;
00972 } edg_wll_CollectionStateEvent;
00973
00978 typedef struct _edg_wll_PBSQueuedEvent {
00979 _EDG_WLL_EVENT_COMMON
00980 char * queue;
00981 char * owner;
00982 char * name;
00983 } edg_wll_PBSQueuedEvent;
00984
00989 typedef struct _edg_wll_PBSMatchEvent {
00990 _EDG_WLL_EVENT_COMMON
00991 char * dest_host;
00992 } edg_wll_PBSMatchEvent;
00993
00998 typedef struct _edg_wll_PBSPendingEvent {
00999 _EDG_WLL_EVENT_COMMON
01000 char * reason;
01001 } edg_wll_PBSPendingEvent;
01002
01007 typedef struct _edg_wll_PBSRunEvent {
01008 _EDG_WLL_EVENT_COMMON
01009 char * scheduler;
01010 char * dest_host;
01011 int pid;
01012 } edg_wll_PBSRunEvent;
01013
01018 typedef struct _edg_wll_PBSRerunEvent {
01019 _EDG_WLL_EVENT_COMMON
01020 } edg_wll_PBSRerunEvent;
01021
01026 typedef struct _edg_wll_PBSDoneEvent {
01027 _EDG_WLL_EVENT_COMMON
01028 int exit_status;
01029 } edg_wll_PBSDoneEvent;
01030
01035 typedef struct _edg_wll_PBSDequeuedEvent {
01036 _EDG_WLL_EVENT_COMMON
01037 } edg_wll_PBSDequeuedEvent;
01038
01043 typedef struct _edg_wll_PBSResourceUsageEvent {
01044 _EDG_WLL_EVENT_COMMON
01045 enum edg_wll_PBSResourceUsageUsage usage;
01046 char * name;
01047 double quantity;
01048 char * unit;
01049 } edg_wll_PBSResourceUsageEvent;
01050
01055 typedef struct _edg_wll_PBSErrorEvent {
01056 _EDG_WLL_EVENT_COMMON
01057 char * error_desc;
01058 } edg_wll_PBSErrorEvent;
01059
01064 typedef struct _edg_wll_CondorMatchEvent {
01065 _EDG_WLL_EVENT_COMMON
01066 char * owner;
01067 char * dest_host;
01068 char * preempting;
01069 } edg_wll_CondorMatchEvent;
01070
01075 typedef struct _edg_wll_CondorRejectEvent {
01076 _EDG_WLL_EVENT_COMMON
01077 char * owner;
01078 enum edg_wll_CondorRejectStatus_code status_code;
01079 } edg_wll_CondorRejectEvent;
01080
01085 typedef struct _edg_wll_CondorShadowStartedEvent {
01086 _EDG_WLL_EVENT_COMMON
01087 char * shadow_host;
01088 uint16_t shadow_port;
01089 int shadow_pid;
01090 char * shadow_status;
01091 } edg_wll_CondorShadowStartedEvent;
01092
01097 typedef struct _edg_wll_CondorShadowExitedEvent {
01098 _EDG_WLL_EVENT_COMMON
01099 int shadow_pid;
01100 int shadow_exit_status;
01101 } edg_wll_CondorShadowExitedEvent;
01102
01107 typedef struct _edg_wll_CondorStarterStartedEvent {
01108 _EDG_WLL_EVENT_COMMON
01109 int starter_pid;
01110 char * universe;
01111 } edg_wll_CondorStarterStartedEvent;
01112
01117 typedef struct _edg_wll_CondorStarterExitedEvent {
01118 _EDG_WLL_EVENT_COMMON
01119 int starter_pid;
01120 int starter_exit_status;
01121 int job_pid;
01122 int job_exit_status;
01123 } edg_wll_CondorStarterExitedEvent;
01124
01129 typedef struct _edg_wll_CondorResourceUsageEvent {
01130 _EDG_WLL_EVENT_COMMON
01131 enum edg_wll_CondorResourceUsageUsage usage;
01132 char * name;
01133 double quantity;
01134 char * unit;
01135 } edg_wll_CondorResourceUsageEvent;
01136
01141 typedef struct _edg_wll_CondorErrorEvent {
01142 _EDG_WLL_EVENT_COMMON
01143 char * error_desc;
01144 } edg_wll_CondorErrorEvent;
01145
01146 #undef _EDG_WLL_EVENT_COMMON
01147
01148
01153 typedef union _edg_wll_Event {
01154 edg_wll_EventCode type;
01155 edg_wll_AnyEvent any;
01156 edg_wll_TransferEvent transfer;
01157 edg_wll_AcceptedEvent accepted;
01158 edg_wll_RefusedEvent refused;
01159 edg_wll_EnQueuedEvent enQueued;
01160 edg_wll_DeQueuedEvent deQueued;
01161 edg_wll_HelperCallEvent helperCall;
01162 edg_wll_HelperReturnEvent helperReturn;
01163 edg_wll_RunningEvent running;
01164 edg_wll_ResubmissionEvent resubmission;
01165 edg_wll_DoneEvent done;
01166 edg_wll_CancelEvent cancel;
01167 edg_wll_AbortEvent abort;
01168 edg_wll_ClearEvent clear;
01169 edg_wll_PurgeEvent purge;
01170 edg_wll_MatchEvent match;
01171 edg_wll_PendingEvent pending;
01172 edg_wll_RegJobEvent regJob;
01173 edg_wll_ChkptEvent chkpt;
01174 edg_wll_ListenerEvent listener;
01175 edg_wll_CurDescrEvent curDescr;
01176 edg_wll_UserTagEvent userTag;
01177 edg_wll_ChangeACLEvent changeACL;
01178 edg_wll_NotificationEvent notification;
01179 edg_wll_ResourceUsageEvent resourceUsage;
01180 edg_wll_ReallyRunningEvent reallyRunning;
01181 edg_wll_SuspendEvent suspend;
01182 edg_wll_ResumeEvent resume;
01183 edg_wll_CollectionStateEvent collectionState;
01184 edg_wll_PBSQueuedEvent PBSQueued;
01185 edg_wll_PBSMatchEvent PBSMatch;
01186 edg_wll_PBSPendingEvent PBSPending;
01187 edg_wll_PBSRunEvent PBSRun;
01188 edg_wll_PBSRerunEvent PBSRerun;
01189 edg_wll_PBSDoneEvent PBSDone;
01190 edg_wll_PBSDequeuedEvent PBSDequeued;
01191 edg_wll_PBSResourceUsageEvent PBSResourceUsage;
01192 edg_wll_PBSErrorEvent PBSError;
01193 edg_wll_CondorMatchEvent CondorMatch;
01194 edg_wll_CondorRejectEvent CondorReject;
01195 edg_wll_CondorShadowStartedEvent CondorShadowStarted;
01196 edg_wll_CondorShadowExitedEvent CondorShadowExited;
01197 edg_wll_CondorStarterStartedEvent CondorStarterStarted;
01198 edg_wll_CondorStarterExitedEvent CondorStarterExited;
01199 edg_wll_CondorResourceUsageEvent CondorResourceUsage;
01200 edg_wll_CondorErrorEvent CondorError;
01201 } edg_wll_Event;
01202
01203
01208 extern edg_wll_Event *edg_wll_InitEvent(edg_wll_EventCode eventcode);
01209
01210
01219 void edg_wll_FreeEvent(
01220 edg_wll_Event * event
01221 );
01222
01223
01224
01225
01226
01227 #ifdef __cplusplus
01228 }
01229 #endif
01230
01231 #endif