Files

48 lines
2.5 KiB
C#
Raw Permalink Normal View History

2026-04-17 14:55:32 -04:00
using DbAPI.Connections;
using DTS.Common.Interface.Database;
using DTS.Common.Interface.Graphs;
namespace DbAPI.TestSetups
{
/// <summary>
/// defines functions to create, retrieve, update, delete graphs
/// </summary>
public interface IGraphs
{
/// <summary>
/// retrieves all graph records matching search criteria
/// </summary>
/// <param name="user">user making query</param>
/// <param name="connection">connection query is being made on</param>
/// <param name="graphId">graph id to retrieve (can be null)</param>
/// <param name="testSetupId">test setup graph belongs to</param>
/// <param name="records">all matching records found</param>
/// <returns>0 (ERROR_SUCCESS) on success, all other values are error codes</returns>
ulong GraphsGet(IUserDbRecord user, IConnectionDetails connection, int? graphId, int? testSetupId, out IGraphRecord[] records);
/// <summary>
/// updates a record in the database
/// </summary>
/// <param name="user">user updating record</param>
/// <param name="connection">connection record is being updated on</param>
/// <param name="record">record to update</param>
/// <returns>0 (ERROR_SUCCESS) on success, all other values are error codes</returns>
ulong GraphsUpdate(IUserDbRecord user, IConnectionDetails connection, IGraphRecord record);
/// <summary>
/// inserts a record into the db, updates GraphId of record after insert with database id
/// </summary>
/// <param name="user">user inserting record</param>
/// <param name="connection">connection record is being inserted on</param>
/// <param name="record">record being inserted</param>
/// <returns>0 (ERROR_SUCCESS) on success, all other values are error codes</returns>
ulong GraphsInsert(IUserDbRecord user, IConnectionDetails connection, ref IGraphRecord record);
/// <summary>
/// removes a record from the db
/// </summary>
/// <param name="user">user removing record</param>
/// <param name="connection">connection record is being removed on</param>
/// <param name="graphId">database id of record being removed</param>
/// <returns>0 (ERROR_SUCCESS) on success, all other values are error codes</returns>
ulong GraphsDelete(IUserDbRecord user, IConnectionDetails connection, int graphId);
}
}