Bug 612682

Summary: QMF: need to be able to construct object id's from agent and object identification strings.
Product: Red Hat Enterprise MRG Reporter: Ken Giusti <kgiusti>
Component: qpid-qmfAssignee: Ken Giusti <kgiusti>
Status: CLOSED ERRATA QA Contact: Martin Kudlej <mkudlej>
Severity: high Docs Contact:
Priority: low    
Version: betaCC: freznice, mkudlej
Target Milestone: 1.3   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2010-10-20 11:30:50 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 612636    

Description Ken Giusti 2010-07-08 18:45:27 UTC
Description of problem:

The current API only allows an ObjectId to be created by adding an object to the agent.  For those cases where an ObjectId is part of a data object, there needs to be a method for constructing an ObjectId from the agent and object identification strings without the need for access to the agent that owns the object.

Comment 1 Ken Giusti 2010-07-08 20:35:47 UTC
New API's added:

C++:

void ManagementAgent::getName(std::string& vendor, std::string& product, std::string& instance);

const std::string& ManagementAgent::getAddress();

ObjectId::ObjectId(const std::string& agentAddress, const std::string& key,
uint64_t epoch=0);

To construct an ObjectId using the new api:

   ObjectId oid(agent->getAddress(), "my-object-id");

and in console.py:

class method ObjectId.create(agent_name, object_name, epoch=0)

Committed upstream revision 961919

Comment 3 Martin Kudlej 2010-10-04 09:47:49 UTC
Tested with 
qmf-0.7.946106-17.el5
python-qmf-0.7.946106-13.el5
condor-qmf-7.4.4-0.16.el5
condor-7.4.4-0.16.el5
qpid-cpp-client-0.7.946106-17.el5
qpid-tools-0.7.946106-11.el5
python-qpid-0.7.946106-14.el5
qpid-cpp-server-0.7.946106-17.el5

on RHEL 5.5 x i386/x86_64 and it works. --> VERIFIED