Esempio n. 1
0
        public EndorsementBodyController(UnitOfWork unitOfWork)
        {
            _roleManager = new RoleManager <IdentityRole>(new RoleStore <IdentityRole>(new ApplicationDbContext()));
            _unitOfWork  = unitOfWork;
            _unitOfWork.UniSADbContext = new UniSA.DataAccess.UniSADbContext();
            var moocMicroCredentialProvider = new MoocMicroCredentialProvider(new StratisEndPointAdhocService(), new EncryptDecrypt());

            _repositoryEndPointService = new RepositoryEndPointServices(_unitOfWork, moocMicroCredentialProvider);            _repositoryEndPointService = new RepositoryEndPointServices(_unitOfWork, moocMicroCredentialProvider);
            moocMicroCredentialProvider.RepositoryEndPointService = _repositoryEndPointService;
        }
Esempio n. 2
0
        public void Setup()
        {
            AutofacConfig.RegisterTypes();
            var stratisEndPoint = new StratisEndPointAdhocService();
            var rsaEngine       = new EncryptDecrypt();

            _moocMicroCredentialProvider = new MoocMicroCredentialProvider(stratisEndPoint, rsaEngine);
            _employeeOperations          = new EmployeeOperations(stratisEndPoint, rsaEngine, _moocMicroCredentialProvider);
            _employerOperations          = new EmployerOperations(stratisEndPoint, rsaEngine, _moocMicroCredentialProvider);
        }
Esempio n. 3
0
        public RecruitmentAgentController(UnitOfWork unitOfWork)
        {
            _roleManager = new RoleManager <IdentityRole>(new RoleStore <IdentityRole>(new ApplicationDbContext()));
            _unitOfWork  = unitOfWork;
            _unitOfWork.UniSADbContext = new UniSA.DataAccess.UniSADbContext();
            var        moocMicroCredentialProvider = new MoocMicroCredentialProvider(new StratisEndPointAdhocService(), new EncryptDecrypt());
            HttpClient client = new HttpClient();

            client.BaseAddress = new Uri(ConfigurationManager.AppSettings["StratisBlockChainBaseUrl"]);
            moocMicroCredentialProvider.StratisApiFullfilRequestComponent = new UniSA.Services.StratisBlockChainServices.StratisApi.StratisApiFullfilRequestComponent(client);
            _repositoryEndPointService = new RepositoryEndPointServices(_unitOfWork, moocMicroCredentialProvider);
        }
Esempio n. 4
0
        public async Task <ActionResult> Login(LoginViewModel model, string ReturnUrl)
        {
            if (!ModelState.IsValid)
            {
                return(View(model));
            }
            var httpClient = new HttpClient();

            httpClient.BaseAddress = new Uri(ConfigurationManager.AppSettings["StratisBlockChainBaseUrl"]);
            var moocMicroCredentialProvider = new MoocMicroCredentialProvider(new StratisEndPointAdhocService(), new EncryptDecrypt());

            _stratisApiComponent = moocMicroCredentialProvider.StratisApiFullfilRequestComponent = new StratisApiFullfilRequestComponent(httpClient);
            // This doesn't count login failures towards account lockout
            // To enable password failures to trigger account lockout, change to shouldLockout: true
            var result = await SignInManager.PasswordSignInAsync(model.Email, model.Password, model.RememberMe, shouldLockout : false);

            var walletNameComponents = model.Email.Split(new char[] { '@', '.' }, StringSplitOptions.RemoveEmptyEntries);
            var walletName           = string.Empty;
            var accountName          = "account 0";

            walletNameComponents.ForEach(c =>
            {
                walletName += c;
            });
            switch (result)
            {
            case SignInStatus.Success:
                var stratisAccount = _unitOfWork.StratisAccountRepository.GetAll().FirstOrDefault(a => a.EmailAddress.ToLower().Equals(model.Email.ToLower()));
                if (stratisAccount == null)
                {
                    var walletCreated = await _stratisApiComponent.CreateWallet(walletName, model.Password, accountName);
                    await SaveWalletToDB(walletName, accountName, model);
                }
                return(RedirectToLocal(ReturnUrl));

            case SignInStatus.LockedOut:
                return(View("Lockout"));

            case SignInStatus.RequiresVerification:
                return(RedirectToAction("SendCode", new { ReturnUrl = ReturnUrl, RememberMe = model.RememberMe }));

            case SignInStatus.Failure:
            default:
                ModelState.AddModelError("", "Invalid login attempt.");
                return(View(model));
            }
        }
Esempio n. 5
0
        public EmployerController(UnitOfWork unitOfWork, ApplicationUserManager userManager)
        {
            _roleManager = new RoleManager <IdentityRole>(new RoleStore <IdentityRole>(new ApplicationDbContext()));
            _unitOfWork  = unitOfWork;
            _unitOfWork.UniSADbContext = new UniSA.DataAccess.UniSADbContext();
            var        stratisEndPoint             = new StratisEndPointAdhocService();
            var        moocMicroCredentialProvider = new MoocMicroCredentialProvider(new StratisEndPointAdhocService(), new EncryptDecrypt());
            var        employerProvider            = new EmployerOperations(stratisEndPoint, new EncryptDecrypt(), moocMicroCredentialProvider);
            HttpClient client = new HttpClient();

            client.BaseAddress = new Uri(ConfigurationManager.AppSettings["StratisBlockChainBaseUrl"]);
            var stratisApiRequests = new UniSA.Services.StratisBlockChainServices.StratisApi.StratisApiFullfilRequestComponent(client);;

            moocMicroCredentialProvider.StratisApiFullfilRequestComponent = stratisApiRequests;
            _repositoryEndPointService = new RepositoryEndPointServices(_unitOfWork, moocMicroCredentialProvider);
            _repositoryEndPointService.EmployerOperations         = employerProvider;
            moocMicroCredentialProvider.RepositoryEndPointService = _repositoryEndPointService;
            employerProvider.RepositoryEndPointService            = _repositoryEndPointService;
            employerProvider.StratisApiFullfilRequestComponent    = stratisApiRequests;
            _userManager = userManager;
        }
Esempio n. 6
0
 public RepositoryEndPointServices(UnitOfWork.UnitOfWork unitOfWork, MoocMicroCredentialProvider moocMicroCredentialProvider)
 {
     _unitOfWork = unitOfWork;
     _moocMicroCredentialProvider = moocMicroCredentialProvider;
 }