SOL9 2.0 Class: ADOErrors

 SOL9 C++ Class Library  SOL9 Samples  SOL9 Tutorial  SOL9 FAQ  SOL9 ClassTree 

Source code

/*
 * ADOErrors.h 
 * Copyright (c) 2011 Antillia.com TOSHIYUKI ARAI. ALL RIGHTS RESERVED. 
 */


// SOL9
// 2009/05/10
// 2009/05/15

#pragma once

#include <sol/sql/ADOCollection.h>
#include <sol/sql/ADOError.h>

namespace SOL {


class ADOErrors :public ADOCollection {


public:
    ADOErrors()
    {
    }

public:
    ~ADOErrors()
    {
    }

public:
    HRESULT createInstance()
    {
        return ADOObject::createInstance(__uuidof(ADODB::Errors));
    }


public:
    void set(__in ADODB::ErrorsPtr pEs)
    {
        setObject((IDispatchPtr)pEs);
    }

public:
    ADODB::ErrorsPtr getErrorsPtr()
    {
        return (ADODB::ErrorsPtr)getObject();
    }

public:
    bool getItem(const _variant_t& index,
            __out ADOError& error)
    {
        bool rc = false;
        ADODB::ErrorPtr pE = getErrorsPtr()->GetItem(index);
        if (pE) {
            error.set(pE);
            rc = true;
        } else {
            throw Exception(E_FAIL, "%s: %s", "E_FAIL", __FUNCTION__);
        }
        return rc;
    }

public:
    ADODB::ErrorPtr getItem(const _variant_t& index)
    {
        return getErrorsPtr()->GetItem(index);
    }


public:

    HRESULT clear()
    {
        HRESULT hr = getErrorsPtr()->Clear();
        if (FAILED(hr)) {
            throw Exception(hr, "%s", __FUNCTION__);
        }
        return hr;

    }


public:
    long getCount()
    {
        return getErrorsPtr()->GetCount();
    }

public:
    HRESULT refresh()
    {
        HRESULT hr = getErrorsPtr()->Refresh();
        if (FAILED(hr)) {
            throw Exception(hr, "%s", __FUNCTION__);
        }
        return hr;
    }

public:
    IUnknownPtr newEnum() 
    {
        return     getErrorsPtr()->_NewEnum();
    }

public:
    void dump()
    {
            long count = getCount();
            printf("ADOErrors:\n");
            for (long i=0; i<count; i++) {
                ADOError error;
                if (getItem(_variant_t(i), error)) {
                    error.dump();
                    printf("\n");    
                }
            }
    }
};

}


Last modified: 1 Feb 2012

Copyright (c) 2009-2012 Antillia.com ALL RIGHTS RESERVED.