*/
enum Attr {
@@@{
+
+ require "../src/EventAttrNames.pl";
+ my %EventAttrNums;
+ my $evno = 0;
+ for (@main::EventAttrNames) {
+ $EventAttrNums{$_} = $evno++;
+ }
+
for (sort {$a cmp $b} getAllFields $event) {
my $u = $_;
# $u =~ s/([a-z])([A-Z])/$1_$2/g;
}
$c .= "\t */\n";
- gen "$c\t\t$u,\n";
+ gen "$c\t\t$u = $EventAttrNums{$u},\n";
}
@@@}
ATTR_MAX /**< Limit for checking attribute code
--- /dev/null
+# The order of strings in this array determines assigned numeric value in the Event::Attr enum.
+# It must not be changed unless API major number is incremented
+
+@main::EventAttrNames = qw/
+ ARRIVED
+ CHILD
+ CHILD_EVENT
+ CLASSAD
+ DESCR
+ DEST_HOST
+ DEST_ID
+ DEST_INSTANCE
+ DEST_JOBID
+ DEST_PORT
+ DESTINATION
+ DONE_CODE
+ ERROR_DESC
+ EXIT_CODE
+ EXIT_STATUS
+ FROM
+ FROM_HOST
+ FROM_INSTANCE
+ HELPER_NAME
+ HELPER_PARAMS
+ HISTOGRAM
+ HOST
+ JDL
+ JOB
+ JOBID
+ JOB_EXIT_STATUS
+ JOB_PID
+ JOBSTAT
+ JOBTYPE
+ LEVEL
+ LOCAL_JOBID
+ NAME
+ NODE
+ NOTIFID
+ NS
+ NSUBJOBS
+ OPERATION
+ OWNER
+ PARENT
+ PERMISSION
+ PERMISSION_TYPE
+ PID
+ PREEMPTING
+ PRIORITY
+ QUANTITY
+ QUEUE
+ REASON
+ RESOURCE
+ RESULT
+ RETVAL
+ SCHEDULER
+ SEED
+ SEQCODE
+ SHADOW_EXIT_STATUS
+ SHADOW_HOST
+ SHADOW_PID
+ SHADOW_PORT
+ SHADOW_STATUS
+ SOURCE
+ SRC_INSTANCE
+ SRC_ROLE
+ STARTER_EXIT_STATUS
+ STARTER_PID
+ STATE
+ STATUS_CODE
+ SVC_HOST
+ SVC_NAME
+ SVC_PORT
+ TAG
+ TIMESTAMP
+ UNIT
+ UNIVERSE
+ USAGE
+ USER
+ USER_ID
+ USER_ID_TYPE
+ VALUE
+ WN_SEQ
+/;