mirror of
https://github.com/privacore/open-source-search-engine.git
synced 2025-07-14 02:36:06 -04:00
show inject requests in the spider queue table now
This commit is contained in:
@ -581,11 +581,29 @@ bool sendHttpReply ( void *state ) {
|
||||
//
|
||||
////////////
|
||||
|
||||
XmlDoc *s_injectHead = NULL;
|
||||
XmlDoc *s_injectTail = NULL;
|
||||
|
||||
XmlDoc *getInjectHead ( ) { return s_injectHead; }
|
||||
|
||||
// send back a reply to the originator of the msg7 injection request
|
||||
void sendUdpReply7 ( void *state ) {
|
||||
|
||||
XmlDoc *xd = (XmlDoc *)state;
|
||||
|
||||
// remove from linked list
|
||||
if ( xd->m_nextInject )
|
||||
xd->m_nextInject->m_prevInject = xd->m_prevInject;
|
||||
if ( xd->m_prevInject )
|
||||
xd->m_prevInject->m_nextInject = xd->m_nextInject;
|
||||
if ( s_injectHead == xd )
|
||||
s_injectHead = xd->m_nextInject;
|
||||
if ( s_injectTail == xd )
|
||||
s_injectTail = xd->m_prevInject;
|
||||
xd->m_nextInject = NULL;
|
||||
xd->m_prevInject = NULL;
|
||||
|
||||
|
||||
UdpSlot *slot = xd->m_injectionSlot;
|
||||
|
||||
uint32_t statColor = 0xccffcc;
|
||||
@ -655,6 +673,19 @@ void handleRequest7 ( UdpSlot *slot , int32_t netnice ) {
|
||||
xd->m_injectionSlot = slot;
|
||||
xd->m_injectStartTime = gettimeofdayInMilliseconds();
|
||||
|
||||
// add to linked list
|
||||
xd->m_nextInject = NULL;
|
||||
xd->m_prevInject = NULL;
|
||||
if ( s_injectTail ) {
|
||||
s_injectTail->m_nextInject = xd;
|
||||
xd->m_prevInject = s_injectTail;
|
||||
s_injectTail = xd;
|
||||
}
|
||||
else {
|
||||
s_injectHead = xd;
|
||||
s_injectTail = xd;
|
||||
}
|
||||
|
||||
if ( ! xd->injectDoc ( ir->ptr_url , // m_injectUrlBuf.getBufStart() ,
|
||||
cr ,
|
||||
ir->ptr_content , // start , // content ,
|
||||
|
@ -1,6 +1,10 @@
|
||||
#ifndef GBINJECT_H
|
||||
#define GBINJECT_H
|
||||
|
||||
// for getting list of injections currently being processed on this host
|
||||
// for printing in the Spider Queue table in Spider.cpp
|
||||
class XmlDoc *getInjectHead ( ) ;
|
||||
|
||||
void handleRequest7Import ( class UdpSlot *slot , int32_t netnice ) ;
|
||||
|
||||
void handleRequest7 ( class UdpSlot *slot , int32_t netnice ) ;
|
||||
|
18
Spider.cpp
18
Spider.cpp
@ -9501,6 +9501,24 @@ bool sendPage ( State11 *st ) {
|
||||
// inc count
|
||||
j++;
|
||||
}
|
||||
// now print the injections as well!
|
||||
XmlDoc *xd = getInjectHead ( ) ;
|
||||
for ( ; xd ; xd = xd->m_nextInject ) {
|
||||
// how does this happen?
|
||||
if ( ! xd->m_sreqValid ) continue;
|
||||
// grab it
|
||||
SpiderRequest *oldsr = &xd->m_sreq;
|
||||
// get status
|
||||
SafeBuf xb;
|
||||
xb.safePrintf("[<font color=red><b>injecting</b></font>] %s",
|
||||
xd->m_statusMsg);
|
||||
char *status = xb.getBufStart();
|
||||
// show that
|
||||
if ( ! oldsr->printToTable ( &sb , status,xd,j) ) return false;
|
||||
// inc count
|
||||
j++;
|
||||
}
|
||||
|
||||
// end the table
|
||||
sb.safePrintf ( "</table>\n" );
|
||||
sb.safePrintf ( "<br>\n" );
|
||||
|
3
XmlDoc.h
3
XmlDoc.h
@ -1011,6 +1011,9 @@ class XmlDoc {
|
||||
int64_t m_startTime;
|
||||
int64_t m_injectStartTime;
|
||||
|
||||
class XmlDoc *m_prevInject;
|
||||
class XmlDoc *m_nextInject;
|
||||
|
||||
// when set() was called by Msg20.cpp so we can time how long it took
|
||||
// to generate the summary
|
||||
int64_t m_setTime;
|
||||
|
Reference in New Issue
Block a user