Added UpdateModel and RemoveModel
Linked new methods to baseBinding
This commit is contained in:
@@ -51,6 +51,8 @@
|
||||
21D0BDA82C8F33AC0077E104 /* ModelCard.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 21D0BDA72C8F33AC0077E104 /* ModelCard.cpp */; };
|
||||
21D0BDAB2C8F363E0077E104 /* CardSetting.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 21D0BDAA2C8F363E0077E104 /* CardSetting.cpp */; };
|
||||
21D0BDCF2C92DAC60077E104 /* AddModel.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 21D0BDCB2C92DAC60077E104 /* AddModel.cpp */; };
|
||||
21D0BDD42C935D1A0077E104 /* UpdateModel.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 21D0BDD22C935D1A0077E104 /* UpdateModel.cpp */; };
|
||||
21D0BDD72C935DAE0077E104 /* RemoveModel.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 21D0BDD52C935DAE0077E104 /* RemoveModel.cpp */; };
|
||||
21D1E9AD2BF14AF200957EAA /* BIMData.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 21D1E9152BF14AEC00957EAA /* BIMData.framework */; };
|
||||
21D1E9AE2BF14AF200957EAA /* TeamworkPortalServerClient.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 21D1E9162BF14AEC00957EAA /* TeamworkPortalServerClient.framework */; };
|
||||
21D1E9AF2BF14AF200957EAA /* GDL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 21D1E9172BF14AEC00957EAA /* GDL.framework */; };
|
||||
@@ -330,6 +332,10 @@
|
||||
21D0BDAA2C8F363E0077E104 /* CardSetting.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CardSetting.cpp; sourceTree = "<group>"; };
|
||||
21D0BDCB2C92DAC60077E104 /* AddModel.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = AddModel.cpp; sourceTree = "<group>"; };
|
||||
21D0BDCE2C92DAC60077E104 /* AddModel.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AddModel.h; sourceTree = "<group>"; };
|
||||
21D0BDD22C935D1A0077E104 /* UpdateModel.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = UpdateModel.cpp; sourceTree = "<group>"; };
|
||||
21D0BDD32C935D1A0077E104 /* UpdateModel.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UpdateModel.h; sourceTree = "<group>"; };
|
||||
21D0BDD52C935DAE0077E104 /* RemoveModel.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = RemoveModel.cpp; sourceTree = "<group>"; };
|
||||
21D0BDD62C935DAE0077E104 /* RemoveModel.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RemoveModel.h; sourceTree = "<group>"; };
|
||||
21D1E9152BF14AEC00957EAA /* BIMData.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = BIMData.framework; path = "../Archicad 27/Support/Frameworks/BIMData.framework"; sourceTree = "<group>"; };
|
||||
21D1E9162BF14AEC00957EAA /* TeamworkPortalServerClient.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = TeamworkPortalServerClient.framework; path = "../Archicad 27/Support/Frameworks/TeamworkPortalServerClient.framework"; sourceTree = "<group>"; };
|
||||
21D1E9172BF14AEC00957EAA /* GDL.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = GDL.framework; path = "../Archicad 27/Support/Frameworks/GDL.framework"; sourceTree = "<group>"; };
|
||||
@@ -922,6 +928,10 @@
|
||||
21B67CA82C77329800FD64FC /* GetSourceApplicationName.h */,
|
||||
21B67CA92C77329800FD64FC /* GetSourceApplicationVersion.cpp */,
|
||||
21B67CAA2C77329800FD64FC /* GetSourceApplicationVersion.h */,
|
||||
21D0BDD52C935DAE0077E104 /* RemoveModel.cpp */,
|
||||
21D0BDD62C935DAE0077E104 /* RemoveModel.h */,
|
||||
21D0BDD22C935D1A0077E104 /* UpdateModel.cpp */,
|
||||
21D0BDD32C935D1A0077E104 /* UpdateModel.h */,
|
||||
);
|
||||
path = Base;
|
||||
sourceTree = "<group>";
|
||||
@@ -1359,9 +1369,11 @@
|
||||
21B67CD92C78C83800FD64FC /* TestBridge.cpp in Sources */,
|
||||
214B7A372C764BCD00D586C1 /* UpdateConfig.cpp in Sources */,
|
||||
21B67CC02C775A0D00FD64FC /* GetDocumentInfo.cpp in Sources */,
|
||||
21D0BDD42C935D1A0077E104 /* UpdateModel.cpp in Sources */,
|
||||
21B67CE72C78D23B00FD64FC /* ConnectorConfig.cpp in Sources */,
|
||||
21B67CAD2C77329800FD64FC /* GetSourceApplicationName.cpp in Sources */,
|
||||
21D0BDA82C8F33AC0077E104 /* ModelCard.cpp in Sources */,
|
||||
21D0BDD72C935DAE0077E104 /* RemoveModel.cpp in Sources */,
|
||||
21B67CDC2C78C88000FD64FC /* SayHi.cpp in Sources */,
|
||||
21F69F122C677BC0008B6A06 /* ConnectorMenu.cpp in Sources */,
|
||||
21F69F8D2C70D7EE008B6A06 /* GetAccounts.cpp in Sources */,
|
||||
|
||||
@@ -88,6 +88,16 @@ void ModelCardDatabase::write(const ModelCard& card) const {
|
||||
} //ModelCardDatabase::write
|
||||
|
||||
|
||||
/*--------------------------------------------------------------------
|
||||
Erase a card
|
||||
|
||||
cardID: The ID of the card to erase
|
||||
--------------------------------------------------------------------*/
|
||||
void ModelCardDatabase::erase(const speckle::utility::String& cardID) const {
|
||||
m_store->erase(cardID);
|
||||
} //ModelCardDatabase::erase
|
||||
|
||||
|
||||
/*--------------------------------------------------------------------
|
||||
Get a serialisation wrapper for the database
|
||||
|
||||
|
||||
@@ -39,6 +39,11 @@ namespace connector::database {
|
||||
@param card The card to write
|
||||
*/
|
||||
void write(const ModelCard& card) const;
|
||||
/*!
|
||||
Erase a card
|
||||
@param cardID The ID of the card to erase
|
||||
*/
|
||||
void erase(const speckle::utility::String& cardID) const;
|
||||
/*!
|
||||
Get a serialisation wrapper for the database
|
||||
@return A database wrapper
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
#include "Connector/Interface/Browser/Bridge/Base/AddModel.h"
|
||||
|
||||
#include "Active/Serialise/CargoHold.h"
|
||||
#include "Connector/Connector.h"
|
||||
#include "Connector/Database/Model/Card/ModelCardDatabase.h"
|
||||
#include "Connector/Interface/Browser/Bridge/Base/Arg/DocumentInfo.h"
|
||||
|
||||
@@ -1,10 +1,13 @@
|
||||
#include "Connector/Interface/Browser/Bridge/Base/BaseBridge.h"
|
||||
|
||||
#include "Connector/Interface/Browser/Bridge/Base/AddModel.h"
|
||||
#include "Connector/Interface/Browser/Bridge/Base/GetConnectorVersion.h"
|
||||
#include "Connector/Interface/Browser/Bridge/Base/GetDocumentInfo.h"
|
||||
#include "Connector/Interface/Browser/Bridge/Base/GetDocumentState.h"
|
||||
#include "Connector/Interface/Browser/Bridge/Base/GetSourceApplicationName.h"
|
||||
#include "Connector/Interface/Browser/Bridge/Base/GetSourceApplicationVersion.h"
|
||||
#include "Connector/Interface/Browser/Bridge/Base/RemoveModel.h"
|
||||
#include "Connector/Interface/Browser/Bridge/Base/UpdateModel.h"
|
||||
|
||||
using namespace connector::interfac::browser::bridge;
|
||||
|
||||
@@ -13,9 +16,12 @@ using namespace connector::interfac::browser::bridge;
|
||||
--------------------------------------------------------------------*/
|
||||
BaseBridge::BaseBridge() : BrowserBridge{"baseBinding"} {
|
||||
//Add bridge methods
|
||||
addMethod<AddModel>();
|
||||
addMethod<GetConnectorVersion>();
|
||||
addMethod<GetDocumentInfo>();
|
||||
addMethod<GetDocumentState>();
|
||||
addMethod<GetSourceApplicationName>();
|
||||
addMethod<GetSourceApplicationVersion>();
|
||||
addMethod<RemoveModel>();
|
||||
addMethod<UpdateModel>();
|
||||
} //BaseBridge::BaseBridge
|
||||
|
||||
@@ -0,0 +1,35 @@
|
||||
#include "Connector/Interface/Browser/Bridge/Base/RemoveModel.h"
|
||||
|
||||
#include "Connector/Connector.h"
|
||||
#include "Connector/Database/Model/Card/ModelCardDatabase.h"
|
||||
#include "Connector/Interface/Browser/Bridge/Base/Arg/DocumentInfo.h"
|
||||
|
||||
using namespace active::container;
|
||||
using namespace active::serialise;
|
||||
using namespace connector::database;
|
||||
using namespace connector::interfac::browser::bridge;
|
||||
using namespace speckle::utility;
|
||||
|
||||
namespace {
|
||||
|
||||
using WrappedValue = active::serialise::CargoHold<PackageWrap, DocumentInfo>;
|
||||
|
||||
}
|
||||
|
||||
/*--------------------------------------------------------------------
|
||||
Default constructor
|
||||
--------------------------------------------------------------------*/
|
||||
RemoveModel::RemoveModel() : BridgeMethod{"RemoveModel", [&](ModelCardEventWrapper card) {
|
||||
return run(card.get());
|
||||
}} {}
|
||||
|
||||
|
||||
/*--------------------------------------------------------------------
|
||||
Add a model card to document storage
|
||||
|
||||
card: The card to add
|
||||
--------------------------------------------------------------------*/
|
||||
void RemoveModel::run(ModelCard& card) const {
|
||||
if (auto modelCardDBase = connector()->getModelCardDatabase(); modelCardDBase != nullptr)
|
||||
modelCardDBase->erase(card.getID());
|
||||
} //RemoveModel::run
|
||||
@@ -0,0 +1,40 @@
|
||||
#ifndef CONNECTOR_INTERFACE_BRIDGE_REMOVE_MODEL
|
||||
#define CONNECTOR_INTERFACE_BRIDGE_REMOVE_MODEL
|
||||
|
||||
#include "Active/Serialise/CargoHold.h"
|
||||
#include "Active/Serialise/Package/Wrapper/PackageWrap.h"
|
||||
#include "Connector/Database/Model/Card/ModelCard.h"
|
||||
#include "Speckle/Interface/Browser/Bridge/BridgeMethod.h"
|
||||
|
||||
namespace connector::interfac::browser::bridge {
|
||||
|
||||
///Argument parameter for a string
|
||||
using CardHold = active::serialise::CargoHold<active::serialise::PackageWrap, connector::database::ModelCard>;
|
||||
///Argument type for this method
|
||||
using ModelCardEventWrapper = speckle::interfac::browser::bridge::JSArgType<CardHold>;
|
||||
|
||||
/*!
|
||||
JS Function class to add a model card to the document storage
|
||||
*/
|
||||
class RemoveModel : public speckle::interfac::browser::bridge::BridgeMethod<ModelCardEventWrapper, void> {
|
||||
public:
|
||||
|
||||
// MARK: - Constructors
|
||||
|
||||
/*!
|
||||
Default constructor
|
||||
*/
|
||||
RemoveModel();
|
||||
|
||||
// MARK: - Functions (const)
|
||||
|
||||
/*!
|
||||
Add a model card to document storage
|
||||
@param card The card to add
|
||||
*/
|
||||
void run(connector::database::ModelCard& card) const;
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
#endif //CONNECTOR_INTERFACE_BRIDGE_REMOVE_MODEL
|
||||
@@ -0,0 +1,35 @@
|
||||
#include "Connector/Interface/Browser/Bridge/Base/UpdateModel.h"
|
||||
|
||||
#include "Connector/Connector.h"
|
||||
#include "Connector/Database/Model/Card/ModelCardDatabase.h"
|
||||
#include "Connector/Interface/Browser/Bridge/Base/Arg/DocumentInfo.h"
|
||||
|
||||
using namespace active::container;
|
||||
using namespace active::serialise;
|
||||
using namespace connector::database;
|
||||
using namespace connector::interfac::browser::bridge;
|
||||
using namespace speckle::utility;
|
||||
|
||||
namespace {
|
||||
|
||||
using WrappedValue = active::serialise::CargoHold<PackageWrap, DocumentInfo>;
|
||||
|
||||
}
|
||||
|
||||
/*--------------------------------------------------------------------
|
||||
Default constructor
|
||||
--------------------------------------------------------------------*/
|
||||
UpdateModel::UpdateModel() : BridgeMethod{"UpdateModel", [&](ModelCardEventWrapper card) {
|
||||
return run(card.get());
|
||||
}} {}
|
||||
|
||||
|
||||
/*--------------------------------------------------------------------
|
||||
Add a model card to document storage
|
||||
|
||||
card: The card to add
|
||||
--------------------------------------------------------------------*/
|
||||
void UpdateModel::run(ModelCard& card) const {
|
||||
if (auto modelCardDBase = connector()->getModelCardDatabase(); modelCardDBase != nullptr)
|
||||
modelCardDBase->write(card);
|
||||
} //UpdateModel::run
|
||||
@@ -0,0 +1,40 @@
|
||||
#ifndef CONNECTOR_INTERFACE_BRIDGE_UPDATE_MODEL
|
||||
#define CONNECTOR_INTERFACE_BRIDGE_UPDATE_MODEL
|
||||
|
||||
#include "Active/Serialise/CargoHold.h"
|
||||
#include "Active/Serialise/Package/Wrapper/PackageWrap.h"
|
||||
#include "Connector/Database/Model/Card/ModelCard.h"
|
||||
#include "Speckle/Interface/Browser/Bridge/BridgeMethod.h"
|
||||
|
||||
namespace connector::interfac::browser::bridge {
|
||||
|
||||
///Argument parameter for a string
|
||||
using CardHold = active::serialise::CargoHold<active::serialise::PackageWrap, connector::database::ModelCard>;
|
||||
///Argument type for this method
|
||||
using ModelCardEventWrapper = speckle::interfac::browser::bridge::JSArgType<CardHold>;
|
||||
|
||||
/*!
|
||||
JS Function class to add a model card to the document storage
|
||||
*/
|
||||
class UpdateModel : public speckle::interfac::browser::bridge::BridgeMethod<ModelCardEventWrapper, void> {
|
||||
public:
|
||||
|
||||
// MARK: - Constructors
|
||||
|
||||
/*!
|
||||
Default constructor
|
||||
*/
|
||||
UpdateModel();
|
||||
|
||||
// MARK: - Functions (const)
|
||||
|
||||
/*!
|
||||
Add a model card to document storage
|
||||
@param card The card to add
|
||||
*/
|
||||
void run(connector::database::ModelCard& card) const;
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
#endif //CONNECTOR_INTERFACE_BRIDGE_UPDATE_MODEL
|
||||
Reference in New Issue
Block a user