using System;
using System.Threading.Tasks;
namespace Abp.Domain.Uow
{
///
/// Used to complete a unit of work.
/// This interface can not be injected or directly used.
/// Use instead.
///
public interface IUnitOfWorkCompleteHandle : IDisposable
{
///
/// Completes this unit of work.
/// It saves all changes and commit transaction if exists.
///
void Complete();
///
/// Completes this unit of work.
/// It saves all changes and commit transaction if exists.
///
Task CompleteAsync();
}
}