/// <summary> /// Creates all the specified virtual resources. /// </summary> public override void Start() { // Install all print queues for the specified user. InstallRemotePrinters(); InstallLocalPrinters(); // Perform user specific setup, but don't actually start the Office Worker on the // Citrix server. Wait until the ExecuteResources is called for that. This will // better simulate a simultaneous load on the Citrix server. ChangeResourceState(_credential.ResourceInstanceId, RuntimeState.Starting); ChangeMachineStatusMessage("Configuring User"); ConfigureUserGroups(_credential); CitrixSessionManager.ConfigureLocalUserGroups(_credential, _citrixServer); ChangeMachineStatusMessage("Resetting Citrix"); CitrixSessionManager.ResetCitrixSession(_credential.UserName, _citrixServer); // If a value is provided for the published app, then start it first. if (!string.IsNullOrEmpty(_worker.PublishedApp)) { CitrixSessionManager.StartPublishedApp(_credential, _citrixServer, _worker.PublishedApp); } ChangeMachineStatusMessage("Starting Citrix User"); StartCitrixUserSession(); }
/// <summary> /// Creates all EventLogCollector virtual resources. /// </summary> public override void Start() { ChangeResourceState(RuntimeState.Starting); OpenManagementServiceEndpoint(_credential.UserName); ChangeMachineStatusMessage("Configuring User"); CitrixSessionManager.ConfigureLocalUserGroups(_credential, _citrixServer); ChangeMachineStatusMessage("Resetting Citrix"); CitrixSessionManager.ResetCitrixSession(_credential.UserName, _citrixServer); // Register and let the dispatcher know it's available to run. SessionProxyBackendConnection.RegisterResource(ServiceEndpoint); }