[Mobies-commit] [commit] r4080 - in UDM/trunk: include src/UdmBase
ksmyth at redhat1.isis.vanderbilt.edu
ksmyth at redhat1.isis.vanderbilt.edu
Fri Aug 3 17:34:23 CDT 2012
Author: ksmyth
Date: Fri Aug 3 17:34:22 2012
New Revision: 4080
Log:
SmartDataNetwork::GetAssociationRoleInfo. Add CreateSmartDataNetwork for future backwards-compatibility
Modified:
UDM/trunk/include/UdmBase.h
UDM/trunk/src/UdmBase/UdmBase.cpp
Modified: UDM/trunk/include/UdmBase.h
==============================================================================
--- UDM/trunk/include/UdmBase.h Fri Aug 3 17:34:11 2012 (r4079)
+++ UDM/trunk/include/UdmBase.h Fri Aug 3 17:34:22 2012 (r4080)
@@ -3320,7 +3320,11 @@
friend void ::Uml::Initialize();
};
-
+// This function is provided for backwards-compatibility:
+// If a virtual function is added to DataNetwork, programs that are compiled against the augmented version and
+// instantiate a SmartDataNetwork will not link against older version of Udm
+// TLDR: use CreateSmartDataNetwork instead of new SmartDataNetwork
+UDM_DLL DataNetwork* CreateSmartDataNetwork(const UdmDiagram &metainfo, UdmProject * pr = NULL);
class SmartDataNetwork : public DataNetwork
{
@@ -3508,6 +3512,10 @@
virtual const string & Str(){return str;};
virtual set<Object> GetAllInstancesOf(const ::Uml::Class& meta){return testdn()->GetAllInstancesOf(meta);};
+ virtual UDM_DLL struct AssociationRoleInfo GetAssociationRoleInfo(const ::Uml::AssociationRole &role) const
+ {
+ return testdn()->GetAssociationRoleInfo(role);
+ }
};
class UDM_DLL MetaDepository
Modified: UDM/trunk/src/UdmBase/UdmBase.cpp
==============================================================================
--- UDM/trunk/src/UdmBase/UdmBase.cpp Fri Aug 3 17:34:11 2012 (r4079)
+++ UDM/trunk/src/UdmBase/UdmBase.cpp Fri Aug 3 17:34:22 2012 (r4080)
@@ -1957,6 +1957,11 @@
}
};
+
+ UDM_DLL DataNetwork* CreateSmartDataNetwork(const UdmDiagram &metainfo, UdmProject * pr)
+ {
+ return new SmartDataNetwork(metainfo, pr);
+ }
}
More information about the Mobies-commit
mailing list