const char *host,
int port,
const char *owner,
+ int flags,
int expires,
const edg_wll_JobStat notif_job_stat)
{
- int ret=0;
- char *xml_data, *xml_esc_data=NULL;
+ int ret=0;
+ char *xml_data, *xml_esc_data=NULL;
+ edg_wll_JobStat stat = notif_job_stat;
- if(edg_wll_JobStatusToXML(context, notif_job_stat, &xml_data))
+
+ if (flags == 0) {
+ stat.jdl = NULL;
+ }
+
+ if(edg_wll_JobStatusToXML(context, stat, &xml_data))
goto out;
if((xml_esc_data = glite_lbu_EscapeXML(xml_data)) == NULL) {
* \param host,port address to deliver the notification to.
* \param owner DN of the registration owner, this will be verified
* against client's certificate
+ * \param flags verbosity of returned status
* \param notif_job_stat structure describing job status
* \see edg_wll_NotifSend()
*/
const char *host,
int port,
const char *owner,
+ int flags,
int expires,
const edg_wll_JobStat notif_job_stat);
int edg_wll_NotifMatch(edg_wll_Context ctx, const edg_wll_JobStat *stat)
{
edg_wll_NotifId nid = NULL;
- char *jobq,*ju = NULL,*jobc[5];
+ char *jobq,*ju = NULL,*jobc[6];
glite_lbu_Statement jobs = NULL;
int ret,i;
time_t expires,now = time(NULL);
}
trio_asprintf(&jobq,
- "select distinct n.notifid,n.destination,n.valid,u.cert_subj,n.conditions "
+ "select distinct n.notifid,n.destination,n.valid,u.cert_subj,n.conditions,n.flags "
"from notif_jobs j,users u,notif_registrations n "
"where j.notifid=n.notifid and n.userid=u.userid "
" and (j.jobid = '%|Ss' or j.jobid = '%|Ss' %s) %s",
/* XXX: only temporary hack!!!
*/
ctx->p_instance = strdup("");
- if ( edg_wll_NotifJobStatus(ctx, nid, dest, port, jobc[3], expires, *stat) )
+ if ( edg_wll_NotifJobStatus(ctx, nid, dest, port, jobc[3], atoi(jobc[5]), expires, *stat) )
{
free(dest);
for (i=0; i<sizeof(jobc)/sizeof(jobc[0]); i++) free(jobc[i]);