/// <summary>
            /// Converts the service request database instance to IService instance
            /// </summary>
            /// <param name="service">ServiceRequest instance</param>
            /// <returns>IService instance</returns>
            /// <exception cref="Siminov.Connect.Exception.ServiceException">ServiceException If any exception occur while converting the instance</exception>
		    public IService Convert(Connect.Model.ServiceRequest service) 
            {
			
			    IService iService = (IService) ClassUtils.CreateClassInstance(service.GetInstanceOf());
			    iService.SetRequestId(service.GetRequestId());
			    iService.SetService(service.GetService());
			    iService.SetRequest(service.GetRequest());
			
			    IEnumerator<ServiceRequestResource> serviceRequestResources = service.GetServiceRequestResources();
			    while(serviceRequestResources.MoveNext()) 
                {
				    ServiceRequestResource serviceResource = serviceRequestResources.Current;
				    iService.AddResource(serviceResource.GetName(), serviceResource.GetValue());
			    }

			    ServiceDescriptor serviceDescriptor = resourceManager.RequiredServiceDescriptorBasedOnName(service.GetService());
			    iService.SetServiceDescriptor(serviceDescriptor);
			
			    ResourceUtils.Resolve(iService);

			    return iService;
		    }