diff options
Diffstat (limited to 'TAO/utils/NamingViewer/ViewIORDialog.cpp')
-rw-r--r-- | TAO/utils/NamingViewer/ViewIORDialog.cpp | 143 |
1 files changed, 0 insertions, 143 deletions
diff --git a/TAO/utils/NamingViewer/ViewIORDialog.cpp b/TAO/utils/NamingViewer/ViewIORDialog.cpp deleted file mode 100644 index f7724f02d70..00000000000 --- a/TAO/utils/NamingViewer/ViewIORDialog.cpp +++ /dev/null @@ -1,143 +0,0 @@ -// $Id$ - -#include "stdafx.h" -#include "NamingViewer.h" -#include "ViewIORDialog.h" -#include "tao/IIOP_Profile.h" -#include "tao/Stub.h" - -#ifdef _DEBUG -#define new DEBUG_NEW -#undef THIS_FILE -static char THIS_FILE[] = __FILE__; -#endif - -///////////////////////////////////////////////////////////////////////////// -// ViewIORDialog dialog - - -ViewIORDialog::ViewIORDialog(CORBA::ORB_ptr pORB, CORBA::Object_ptr pObject, CWnd* pParent /*=NULL*/) - : CDialog(ViewIORDialog::IDD, pParent) -{ - //{{AFX_DATA_INIT(ViewIORDialog) - m_TypeID = _T(""); - m_IOR = _T(""); - //}}AFX_DATA_INIT - m_pORB = pORB; - if(pObject) - { - m_Object = CORBA::Object::_duplicate(pObject); - } - CORBA::String_var IOR = pORB->object_to_string(pObject); - m_IOR = IOR; -} - - -void ViewIORDialog::DoDataExchange(CDataExchange* pDX) -{ - CDialog::DoDataExchange(pDX); - //{{AFX_DATA_MAP(ViewIORDialog) - DDX_Control(pDX, IDC_PROFILES, m_Profiles); - DDX_Text(pDX, IDC_TYPE_ID, m_TypeID); - DDX_Text(pDX, IDC_IOR, m_IOR); - //}}AFX_DATA_MAP -} - - -BEGIN_MESSAGE_MAP(ViewIORDialog, CDialog) - //{{AFX_MSG_MAP(ViewIORDialog) - ON_BN_CLICKED(IDC_APPLY, OnApply) - //}}AFX_MSG_MAP -END_MESSAGE_MAP() - -///////////////////////////////////////////////////////////////////////////// -// ViewIORDialog message handlers - -BOOL ViewIORDialog::OnInitDialog() -{ - CDialog::OnInitDialog(); - - // TODO: Add extra initialization here - DecodeIOR(); - return TRUE; // return TRUE unless you set the focus to a control - // EXCEPTION: OCX Property Pages should return FALSE -} - -void ViewIORDialog::OnApply() -{ - // TODO: Add your control notification handler code here - UpdateData(); - try - { - m_Object = m_pORB->string_to_object(ACE_TEXT_ALWAYS_CHAR (m_IOR)); - DecodeIOR(); - } - catch(CORBA::Exception& ex) - { - MessageBox(ACE_TEXT_CHAR_TO_TCHAR (ex._rep_id()), ACE_TEXT ("CORBA::Exception")); - } -} - -void ViewIORDialog::DecodeIOR() -{ - // Reset the fields - m_Profiles.DeleteAllItems(); - m_TypeID = ""; - UpdateData(FALSE); - - // if object is nil, return out - if(CORBA::is_nil(m_Object)) - { - return; - } - - // Get the stub - TAO_Stub* pStub = m_Object->_stubobj(); - const char* pType = pStub->type_id; - m_TypeID = pType ? pType : ""; // special case for INS objects, tao doesn't get the type id - UpdateData(FALSE); - - // Iterate through each profile and add an entry to the tree control - const TAO_MProfile& BaseProfiles= pStub->base_profiles(); - CORBA::ULong Count = BaseProfiles.profile_count(); - for(CORBA::ULong Slot = 0; Slot < Count; Slot++) - { - const TAO_Profile* pProfile = BaseProfiles.get_profile(Slot); - HTREEITEM hProfile; - switch(pProfile->tag()) - { - case 0: //IOP::TAG_INTERNET_IOP: - { - TAO_IIOP_Profile* pIIOPProfile = (TAO_IIOP_Profile*)pProfile; - CString ProfileString; - ProfileString.Format(ACE_TEXT ("IIOP %d.%d"), - pIIOPProfile->version().major, - pIIOPProfile->version().minor); - hProfile = m_Profiles.InsertItem(ProfileString); - TAO_IIOP_Endpoint* pIIOPEndpoint = - (TAO_IIOP_Endpoint*)pIIOPProfile->endpoint (); - while(pIIOPEndpoint) - { - CString EndpointString; - EndpointString.Format(ACE_TEXT ("%s:%d"), - pIIOPEndpoint->host(), - pIIOPEndpoint->port()); - HTREEITEM hItem = m_Profiles.InsertItem(EndpointString, hProfile); - m_Profiles.EnsureVisible(hItem); - pIIOPEndpoint = (TAO_IIOP_Endpoint*)pIIOPEndpoint->next(); - } - - } - break; - default: - { - CString ProfileString; - char* pToString = ((TAO_Profile*)pProfile)->to_string(); - ProfileString.Format(ACE_TEXT ("Unknown Profile (Tag=%d) %s"), pProfile->tag(), pToString); - delete pToString; - hProfile = m_Profiles.InsertItem(ProfileString); - } - break; - } - } -} |