private readonly IDataService _service; //  Data service for accessing DataTypes

        #endregion Fields

        #region Constructors

        /// <summary>
        /// Ctor: Accepts injected dataservice
        /// </summary>
        /// <param name="dataService">The DataService instance being injected</param>
        /// <param name="dataTypeMapper">The mapper instance</param>
        public DatatypeController(IDataService dataService, IDataTypeMapper dataTypeMapper, IDataTypeLinkGenerator generator)
        {
            if (dataService == null)
                throw new ArgumentNullException("dataService", "No valid dataservice supplied to the controller.");
            if (dataTypeMapper == null)
                throw new ArgumentNullException("dataTypeMapper", "No valid mapper class supplied to the controller.");
            if (generator == null)
                throw new ArgumentNullException("generator", "No valid link generator supplied to the controller.");

            _service = dataService;
            _mapper = dataTypeMapper;
            _generator = generator;
        }
 /// <summary>
 /// Responsibile for mapping a collection of Windfarm Data types
 /// to the set of links to be returned by the web service
 /// </summary>
 /// <param name="dataTypes">Collection of Windfarm DataTypes</param>
 /// <returns>Collection of available aggregate data types, including links</returns>
 public IEnumerable<DataType> MapTypesToLinks(IEnumerable<string> dataTypes, IDataTypeLinkGenerator generator)
 {
     var types = new List<DataType>();
     foreach (var type in dataTypes)
     {
         var uiType = new DataType()
         {
             Type = type,
             Links = generator.GenerateCollectionLinks(type)
         };
         types.Add(uiType);
     }
     return types;
 }