public Result <SystemRelation, OperationError> AddUsageRelationTo( ItSystemUsage toSystemUsage, Maybe <ItInterface> relationInterface, string description, string reference, Maybe <RelationFrequencyType> targetFrequency, Maybe <ItContract.ItContract> targetContract) { if (toSystemUsage == null) { throw new ArgumentNullException(nameof(toSystemUsage)); } var newRelation = new SystemRelation(this); var updateRelationResult = UpdateRelation(newRelation, toSystemUsage, description, reference, relationInterface, targetContract, targetFrequency); if (updateRelationResult.Failed) { return(updateRelationResult.Error); } UsageRelations.Add(newRelation); return(newRelation); }
public Result <SystemRelation, OperationFailure> RemoveUsageRelation(int relationId) { var relationResult = GetUsageRelation(relationId); if (!relationResult.HasValue) { return(OperationFailure.NotFound); } var relation = relationResult.Value; UsageRelations.Remove(relation); return(relation); }
public Maybe <SystemRelation> GetUsageRelation(int relationId) { return(UsageRelations.FirstOrDefault(r => r.Id == relationId)); }