public void TestInitialize() { IUnityContainer container = new UnityContainer().LoadConfiguration(); this.Manager = container.Resolve<WorkbenchManager>(); JsonConvert.DefaultSettings = () => new JsonSerializerSettings { Formatting = Formatting.None, Converters = new JsonConverter[] { new JsonKnownTypeConverter() } }; }
/// <summary> /// Initializes a new instance of the <see cref="InitialisationService"/> class. /// </summary> public InitialisationService() { this.workbenchManager = Global.DependencyInjectionContainer.Resolve<WorkbenchManager>(); }
/// <summary> /// Initializes a new instance of the <see cref="MigrationDataImporter"/> class. /// </summary> /// <param name="manager">A workbench manager.</param> /// <param name="securityGateway">A gateway into the Security subsystem.</param> public MigrationDataImporter(WorkbenchManager manager, ISecurityService securityGateway) { this.manager = manager; this.securityGateway = securityGateway; }
/// <summary> /// Perform a data migration export. /// </summary> /// <param name="context"> /// An <see cref="HttpContext"/> object that provides references to the intrinsic /// server objects (for example, Request, Response, Session, and Server) used /// to service HTTP requests. /// </param> /// <param name="sessionData">The session data.</param> /// <param name="manager">Managers workbench metadata changes.</param> private void Export(HttpContext context, SessionData sessionData, WorkbenchManager manager) { string[] products = JsonConvert.DeserializeObject<string[]>(context.Request["forms"]); string[] users = JsonConvert.DeserializeObject<string[]>(context.Request["users"]); bool allUsers = JsonConvert.DeserializeObject<bool>(context.Request["allUsers"]); MigrationData migration = manager.Export(sessionData, products, users, allUsers); string serialised = JsonConvert.SerializeObject(migration); //// This is required for the jQuery file download plugin. context.Response.AddCookieHeader(COOKIE_NAME, COOKIE_VALUE); context.Response.BuildBinaryFileResponse(EXPORTED_FILENAME, Encoding.UTF8.GetBytes(serialised), InternetMediaType.TextPlain); context.Response.Flush(); context.ApplicationInstance.CompleteRequest(); }
/// <summary> /// Creates and fill <see cref="DynamicViewBag"/> object with helper methods. /// </summary> /// <param name="manager"> /// The <see cref="WorkbenchManager"/> object. /// </param> /// <returns> /// A <see cref="DynamicViewBag"/> object filled with helper methods. /// </returns> private DynamicViewBag GetViewBag(WorkbenchManager manager) { RegexValidatorList validators = manager.GetValidatorList(true); return new DynamicViewBag(new Dictionary<string, object>() { { "GetValidator", new Func<string, RegexValidator>(id => validators.Find(v => v.Id == id)) }, { "GetRuleDescription", new Func<string, List<ITruthCondition>, string, string>(this.GetRuleString) }, }); }
/// <summary> /// Initializes a new instance of the <see cref="WorkbenchService"/> class. /// </summary> public WorkbenchService() { this.workbenchManager = Global.DependencyInjectionContainer.Resolve<WorkbenchManager>(); this.pdfWriter = Global.DependencyInjectionContainer.Resolve<IProductPdfWriter>(); }
/// <summary> /// Initializes a new instance of the <see cref="ApiManager" /> class. /// </summary> /// <param name="securityService">A gateway into the Security subsystem.</param> /// <param name="formGateway">A gateway into the Forms subsystem.</param> /// <param name="workbenchManager">An instance that manages Workbench operations.</param> /// <param name="migrationDataImporter">A data importer.</param> /// <param name="migrationDataValidator">An import data validator.</param> /// <param name="apiDataAccess">The API data access layer.</param> /// <param name="pdfWriterSettings">A PDF writer settings object.</param> /// <param name="pdfFilenameFormat">The PDF filename format.</param> /// <param name="stringFormatter">A string formatter.</param> public ApiManager( ISecurityService securityService, IFormServiceGateway formGateway, WorkbenchManager workbenchManager, MigrationDataImporter migrationDataImporter, MigrationDataValidator migrationDataValidator, IDataAccess apiDataAccess, PdfWriterSettings pdfWriterSettings, string pdfFilenameFormat, StringFormatter stringFormatter) { this.securityService = securityService; this.formGateway = formGateway; this.workbenchManager = workbenchManager; this.migrationDataImporter = migrationDataImporter; this.migrationDataValidator = migrationDataValidator; this.apiDataAccess = apiDataAccess; this.pdfWriterSettings = pdfWriterSettings; this.pdfFilenameFormat = pdfFilenameFormat; this.stringFormatter = stringFormatter; }