#include <AbiCollabSaveInterceptor.h>
Public Member Functions | |
AbiCollabSaveInterceptor () | |
bool | intercept (AV_View *v, EV_EditMethodCallData *d) |
bool | save (PD_Document *pDoc) |
Private Member Functions | |
bool | _save (std::string uri, bool verify_webapp_host, std::string ssl_ca_file, soa::function_call_ptr fc_ptr, boost::shared_ptr< std::string > result_ptr) |
void | _save_cb (bool success, ServiceAccountHandler *pAccount, AbiCollab *pSession, ConnectionPtr connection_ptr, soa::function_call_ptr fc_ptr, boost::shared_ptr< std::string > result_ptr) |
void | _saveFailed (AbiCollab *pSession) |
Private Attributes | |
EV_EditMethod * | m_pOldSaveEM |
AbiCollabSaveInterceptor::AbiCollabSaveInterceptor | ( | ) |
References AP_BindingSet::_loadChar(), AbiCollabSaveInterceptor_interceptor(), EV_EditMethodContainer::addEditMethod(), AP_TOOLBAR_ID_FILE_SAVE, AV_CHG_ALL, EV_TBIT_PushButton, EV_EditMethodContainer::findEditMethodByName(), XAP_App::getApp(), XAP_App::getBindingMap(), XAP_App::getBindingSet(), XAP_App::getEditMethodContainer(), XAP_App::getInputMode(), XAP_App::getMenuActionSet(), XAP_App::getToolbarActionSet(), m_pOldSaveEM, SAVE_INTERCEPTOR_EM, EV_Toolbar_ActionSet::setAction(), EV_Menu_ActionSet::setAction(), UT_DEBUGMSG, and UT_return_if_fail.
bool AbiCollabSaveInterceptor::_save | ( | std::string | uri, | |
bool | verify_webapp_host, | |||
std::string | ssl_ca_file, | |||
soa::function_call_ptr | fc_ptr, | |||
boost::shared_ptr< std::string > | result_ptr | |||
) | [private] |
References soup_soa::invoke(), UT_DEBUGMSG, and UT_return_val_if_fail.
Referenced by _save_cb(), and save().
void AbiCollabSaveInterceptor::_save_cb | ( | bool | success, | |
ServiceAccountHandler * | pAccount, | |||
AbiCollab * | pSession, | |||
ConnectionPtr | connection_ptr, | |||
soa::function_call_ptr | fc_ptr, | |||
boost::shared_ptr< std::string > | result_ptr | |||
) | [private] |
References _save(), _saveFailed(), AccountHandler::addProperty(), ServiceAccountHandler::askPassword(), ServiceAccountHandler::constructSaveDocumentCall(), soa::SoapFault::detail(), AbiCollabSessionManager::endAsyncOperation(), abicollab::service::error(), soa::method_invocation::function(), ServiceAccountHandler::getCA(), AbiCollab::getDocument(), AbiCollabSessionManager::getManager(), AccountHandler::getProperty(), soa::parse_response(), abicollab::service::SOAP_ERROR_INVALID_PASSWORD, abicollab::service::SOAP_ERROR_NO_CHANGES, AbiCollabSessionManager::storeProfile(), soa::SoapFault::string(), UT_DEBUGMSG, and UT_return_if_fail.
Referenced by save().
void AbiCollabSaveInterceptor::_saveFailed | ( | AbiCollab * | pSession | ) | [private] |
bool AbiCollabSaveInterceptor::intercept | ( | AV_View * | v, | |
EV_EditMethodCallData * | d | |||
) |
References EV_EditMethod::Fn(), XAP_App::getApp(), FV_View::getDocument(), AbiCollabSessionManager::getManager(), AV_View::getParentData(), AbiCollabSessionManager::getSession(), XAP_Frame::getViewNumber(), PD_Document::isDirty(), AbiCollabSessionManager::isInSession(), m_pOldSaveEM, save(), XAP_App::updateClones(), UT_DEBUGMSG, and UT_return_val_if_fail.
Referenced by AbiCollabSaveInterceptor_interceptor().
bool AbiCollabSaveInterceptor::save | ( | PD_Document * | pDoc | ) |
References _save(), _save_cb(), AbiCollabSessionManager::beginAsyncOperation(), ServiceAccountHandler::constructSaveDocumentCall(), AbiCollabSessionManager::getAccounts(), ServiceAccountHandler::getCA(), ServiceAccountHandler::getConnection(), ServiceAccountHandler::getDescription(), AbiCollabSessionManager::getManager(), AccountHandler::getProperty(), AbiCollabSessionManager::getSession(), AccountHandler::getStorageType(), PD_SIGNAL_DOCNAME_CHANGED, PD_Document::setClean(), PD_Document::signalListeners(), UT_continue_if_fail, UT_DEBUGMSG, UT_return_val_if_fail, and UT_UTF8String::utf8_str().
Referenced by intercept(), and AbiCollabService_Export::signal().
Referenced by AbiCollabSaveInterceptor(), and intercept().