Home || Visual Search || Applications || Architecture || Important Messages || OGL || Src

virtual void Impala::Job::Server::AcceptNewJob ( char *  buf,
int  len,
int  bufSize,
CString  conn,
int  port 
) [inline, protected, virtual]

Definition at line 203 of file Server.h.

References AddToJobQueue(), Impala::Util::ChannelServer::ConnectionDescr(), Impala::Util::StringParser::GetString(), ILOG_ERROR, ILOG_INFO, ILOG_WARN, and JobQueueFull().

Referenced by AcceptRequest().

00204     {
00205         String curCon = ConnectionDescr();
00206         ILOG_INFO("Receiving new job from " << curCon);
00207         if (JobQueueFull())
00208         {
00209             ILOG_WARN("Job queue full, cannot accept new job");
00210             sprintf(buf, "MaxJobs\0");
00211         }
00212         else
00213         {
00214             Util::StringParser parser(String(buf, len));
00215             parser.GetString(':');
00216             if (parser.GetString('=') == "cmdLine")
00217             {
00218                 String cmdLine = parser.GetString('\0');
00219                 Job* job = new Job();
00220                 job->srcPort = port;
00221                 job->jobSpec = cmdLine;
00222                 int jobId = AddToJobQueue(job);
00223                 sprintf(buf, "JobAccepted:jobId=%i\0", jobId);
00224             }
00225             else
00226             {
00227                 ILOG_ERROR("Invalid job specification: " << String(buf, len));
00228                 sprintf(buf, "MaxJobs\0");
00229             }
00230         }
00231     }

Here is the call graph for this function:


Generated on Thu Jan 13 09:22:21 2011 for ImpalaSrc by  doxygen 1.5.1