///
/// Copyright © 2003-2008 JetBrains s.r.o.
/// You may distribute under the terms of the GNU General Public License, as published by the Free Software Foundation, version 2 (see License.txt in the repository root folder).
///
using System;
using JetBrains.Omea.OpenAPI;
namespace JetBrains.Omea.OpenApiEx
{
public interface IResourceObject : IComparable
{
///
/// Gets the underlying resource storing the object data.
///
IResource Resource { get; }
///
/// Gets the ID of the resource.
///
int Id { get; }
///
/// Gets or sets whether all the write-operations to the resource properties should be asynchronous.
///
bool Async { get; set; }
///
/// Gets or sets the async operations priority (applies only when is True).
///
JobPriority AsyncPriority { get; set; }
///
/// Marks the resource as deleted.
///
void Delete();
///
/// Unmarks the resource as deleted.
///
void Undelete();
}
}