Пример #1
0
bool DataObjectListHelper::AddObject( const CString& name, const CString& value )
{
    if( name.GetLength() == 0 || value.GetLength() == 0 ) return false;

    ArxDictTool* pDictTool = ArxDictTool::GetDictTool( OBJECT_LIST_DICT );
    bool ret = ( INVALID_ENTRY != pDictTool->addEntry( name, value ) );
    if( ret )
    {
        ArxDictTool2* pDictTool2 = ArxDictTool2::GetDictTool( OBJECT_LIST_DATA_DICT );
        CString key;
        key.Format( _T( "%s_%s" ), name, value );

        DataObject* pDO = new DataObject();
        pDO->setType( name );
        pDO->initData();  // 初始化数据
        ret = pDictTool2->addEntry( key, pDO );
        if( !ret ) // 添加Object失败
        {
            delete pDO;
            pDictTool->removeEntry( name, value );
        }
        delete pDictTool2;
    }
    delete pDictTool;

    return ret;
}
Пример #2
0
bool SingleDataObjectHelper::AddObject( const CString& name )
{
    if( name.GetLength() == 0 ) return false;

    ArxDictTool2* pDictTool2 = ArxDictTool2::GetDictTool( GLOBAL_SINGLE_INFO_DICT );
    DataObject* pDO = new DataObject();
    pDO->setType( name );
    pDO->initData();  // 初始化数据
    bool ret = pDictTool2->addEntry( name, pDO );
    if( !ret ) delete pDO; // 添加Object失败
    delete pDictTool2;
    return ret;
}