pm_AssignResThread Class Reference
[Partition Manager]

#include <i_migrationjob_impl.h>

Inheritance diagram for pm_AssignResThread:

Inheritance graph
[legend]
Collaboration diagram for pm_AssignResThread:

Collaboration graph
[legend]

List of all members.


Detailed Description

Definition at line 28 of file i_migrationjob_impl.h.


Public Member Functions

 pm_AssignResThread (i_MigrationJob_i &a_migJob, const i_ResourceList_t &a_resources, cmn_Mutex &a_jobActivate_x)

Private Member Functions

 ~pm_AssignResThread ()
virtual void Run (void *arg)

Private Attributes

i_MigrationJob_im_migJob
i_ResourceList_t m_resources
cmn_Mutexm_resource_x
 log_CLASSID_m

Friends

class i_MigrationJob_i

Constructor & Destructor Documentation

pm_AssignResThread::pm_AssignResThread ( i_MigrationJob_i a_migJob,
const i_ResourceList_t a_resources,
cmn_Mutex a_jobActivate_x 
)

Definition at line 486 of file i_migrationjob_impl.cpp.

References log_FUNC_m.

00489     : m_migJob(a_migJob),
00490       m_resources(a_resources),
00491       m_resource_x(a_resource_x){
00492     log_FUNC_m(pm_AssignResThread);
00493 }

pm_AssignResThread::~pm_AssignResThread (  )  [private]

Definition at line 495 of file i_migrationjob_impl.cpp.

References log_FUNC_m.

00495                                        {
00496     log_FUNC_m(~pm_AssignResThread);
00497 }


Member Function Documentation

void pm_AssignResThread::Run ( void *  arg  )  [private, virtual]

Reimplemented from cmn_Thread.

Definition at line 499 of file i_migrationjob_impl.cpp.

References ivd_BaseException::GetError(), ie_JOB_REMOVED, i_JobParams::jobID, log_ERR_m, log_FUNC_m, i_Job_i::m_iJobParams, m_migJob, m_resource_x, m_resources, and i_Resource_t::resAssigned.

00499                                       {
00500     log_FUNC_m(Run);
00501     try {
00502         m_migJob.i_Job_i::AssignResources(m_resources);    
00503     } catch (ivd_Exception &e){
00504         log_ERR_m("[" << m_migJob.m_iJobParams.jobID << "] " << e);
00505         if (e.GetError() == ie_JOB_REMOVED){
00506             //bug 2389
00507             //resources should be released
00508             {
00509                 i_Resource_t tmpRes;
00510                 tmpRes = m_resources[0];
00511                 tmpRes.resAssigned = true;
00512                 cmn_MutexLock l(m_resource_x);            
00513                 m_migJob.i_Job_i::SetResources(tmpRes);
00514             }
00515             
00516         }
00517     }
00518 }

Here is the call graph for this function:


Friends And Related Function Documentation

friend class i_MigrationJob_i [friend]

Definition at line 33 of file i_migrationjob_impl.h.


Member Data Documentation

Definition at line 42 of file i_migrationjob_impl.h.

Referenced by Run().

Definition at line 43 of file i_migrationjob_impl.h.

Referenced by Run().

Definition at line 44 of file i_migrationjob_impl.h.

Referenced by Run().

Reimplemented from cmn_Thread.

Definition at line 46 of file i_migrationjob_impl.h.


The documentation for this class was generated from the following files:

Generated on Mon Feb 27 19:44:16 2012 for OPENARCHIVE by  doxygen 1.5.6