//Auto-generated by kalyptus. DO NOT EDIT.
namespace Soprano.Client {
    using Soprano;
    using System;
    using Qyoto;
    /// <remarks>
    ///  \class DBusNodeIterator dbusnodeiterator.h Soprano/Client/DBusNodeIterator
    ///  \brief Interface to a DBus server node iterator.
    ///  The DBusNodeIterator provides a fully functional interface
    ///  to a NodeIterator provided through a %Soprano D-Bus server. It can thus,
    ///  be seen as the counterpart to Server.DBusExportIterator.
    ///  Given the DBus service name and the object path of the NodeIterator
    ///  in question it handles all DBus communication transparently.
    ///  Normally there is no need to use this class directly as 
    ///  DBusModel does create instances of it on request.
    ///  \author Sebastian Trueg <trueg@kde.org>
    ///  \sa \ref soprano_server_dbus
    ///  \since 2.1
    ///          </remarks>        <short>    \class DBusNodeIterator dbusnodeiterator.</short>
    [SmokeClass("Soprano::Client::DBusNodeIterator")]
    public class DBusNodeIterator : Soprano.NodeIterator, IDisposable {
        protected DBusNodeIterator(Type dummy) : base((Type) null) {}
        protected new void CreateProxy() {
            interceptor = new SmokeInvocation(typeof(DBusNodeIterator), this);
        }
        /// <remarks>
        ///  Create a new DBus NodeIterator interface.
        ///  \param serviceName The name of the DBus service that provides the NodeIterator.
        ///  \param dbusObject The path to the NodeIterator object in the DBus service.
        ///              </remarks>        <short>    Create a new DBus NodeIterator interface.</short>
        public DBusNodeIterator(string serviceName, string dbusObject) : this((Type) null) {
            CreateProxy();
            interceptor.Invoke("DBusNodeIterator$$", "DBusNodeIterator(const QString&, const QString&)", typeof(void), typeof(string), serviceName, typeof(string), dbusObject);
        }
        ~DBusNodeIterator() {
            interceptor.Invoke("~DBusNodeIterator", "~DBusNodeIterator()", typeof(void));
        }
        public new void Dispose() {
            interceptor.Invoke("~DBusNodeIterator", "~DBusNodeIterator()", typeof(void));
        }
    }
}
