public HttpResponseMessage Update(Identity id, Facade.GroupPut group) { return ProcessPut(() => { var instance = group.ToModel(); updateGroupCommand.Execute(instance); }); }
public HttpResponseMessage Create(Facade.SubscriptionPost subscription) { return ProcessPost(() => { var instance = subscription.ToModel(); createCommand.Execute(instance); return ResourceLocation.OfSubscription(instance.Id.Value); }); }
public HttpResponseMessage Create(Facade.GroupPost topic) { return ProcessPost(() => { var instance = topic.ToModel(); createGroupCommand.Execute(instance); return ResourceLocation.OfGroup(instance.Id.Value); }); }
public HttpResponseMessage<Facade.Topic[]> GetByGroup(Facade.Identity groupId, int skip, int limit) { // set valid values of opional parameters var validatedSkip = skip > 0 ? skip : new int?(); var validatedLimit = limit > 0 ? limit : new int?(); return ProcessGet(() => topicsByGroup.GetTopics(groupId.ToModel(), validatedSkip, validatedLimit) .Select(item => item.ToFacade()) .ToArray()); }