//Auto-generated by kalyptus. DO NOT EDIT.
namespace Akonadi {
    using Kimono;
    using System;
    using Qyoto;
    /// <remarks>
    ///  If a job inside a TransactionBeginJob has been failed,
    ///  the TransactionRollbackJob can be used to rollback all changes done by these
    ///  jobs.
    ///  @note This will only have an effect when used as a subjob or with a Session.
    /// </remarks>        <author> Volker Krause <vkrause@kde.org>
    ///  </author>
    ///         <short> Job that aborts a session-global transaction. </short>
    [SmokeClass("Akonadi::TransactionRollbackJob")]
    public class TransactionRollbackJob : Akonadi.Job, IDisposable {
        protected TransactionRollbackJob(Type dummy) : base((Type) null) {}
        protected new void CreateProxy() {
            interceptor = new SmokeInvocation(typeof(TransactionRollbackJob), this);
        }
        /// <remarks>
        ///  Creates a new transaction rollback job.
        ///  The parent must be the same parent as for the TransactionBeginJob.
        /// <param> name="parent" The parent job or Session, must not be 0.
        ///      </param></remarks>        <short>    Creates a new transaction rollback job.</short>
        public TransactionRollbackJob(QObject parent) : this((Type) null) {
            CreateProxy();
            interceptor.Invoke("TransactionRollbackJob#", "TransactionRollbackJob(QObject*)", typeof(void), typeof(QObject), parent);
        }
        [SmokeMethod("doStart()")]
        protected override void DoStart() {
            interceptor.Invoke("doStart", "doStart()", typeof(void));
        }
        ~TransactionRollbackJob() {
            interceptor.Invoke("~TransactionRollbackJob", "~TransactionRollbackJob()", typeof(void));
        }
        public new void Dispose() {
            interceptor.Invoke("~TransactionRollbackJob", "~TransactionRollbackJob()", typeof(void));
        }
        protected new ITransactionRollbackJobSignals Emit {
            get { return (ITransactionRollbackJobSignals) Q_EMIT; }
        }
    }

    public interface ITransactionRollbackJobSignals : Akonadi.IJobSignals {
    }
}
