mirror of
https://github.com/OrchardCMS/Orchard.git
synced 2025-09-19 01:57:55 +08:00
- Service layer for the Roles module.
--HG-- extra : convert_revision : svn%3A5ff7c347-ad56-4c35-b696-ccb81de16e03/trunk%4039510
This commit is contained in:
@@ -0,0 +1,52 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using Orchard.Data;
|
||||
using Orchard.Logging;
|
||||
using Orchard.Roles.Models;
|
||||
|
||||
namespace Orchard.Roles.Services {
|
||||
public interface IRoleService : IDependency {
|
||||
IEnumerable<RoleRecord> GetRoles();
|
||||
RoleRecord GetRole(int id);
|
||||
void CreateRole(string roleName);
|
||||
void UpdateRole(int id, string roleName);
|
||||
void DeleteRole(int id);
|
||||
}
|
||||
|
||||
public class RoleService : IRoleService {
|
||||
private readonly IRepository<RoleRecord> _roleRepository;
|
||||
|
||||
public RoleService(IRepository<RoleRecord> roleRepository) {
|
||||
_roleRepository = roleRepository;
|
||||
Logger = NullLogger.Instance;
|
||||
}
|
||||
|
||||
public ILogger Logger { get; set; }
|
||||
|
||||
#region Implementation of IRoleService
|
||||
|
||||
public IEnumerable<RoleRecord> GetRoles() {
|
||||
var roles = from role in _roleRepository.Table select role;
|
||||
return roles.ToList();
|
||||
}
|
||||
|
||||
public RoleRecord GetRole(int id) {
|
||||
return _roleRepository.Get(id);
|
||||
}
|
||||
|
||||
public void CreateRole(string roleName) {
|
||||
_roleRepository.Create(new RoleRecord { Name = roleName });
|
||||
}
|
||||
|
||||
public void UpdateRole(int id, string roleName) {
|
||||
_roleRepository.Update(new RoleRecord { Id = id, Name = roleName });
|
||||
}
|
||||
|
||||
public void DeleteRole(int id) {
|
||||
_roleRepository.Delete(new RoleRecord { Id = id });
|
||||
}
|
||||
|
||||
#endregion
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user