From 06713d56fb783294edaa5be7fdcc5a82c54f33bd Mon Sep 17 00:00:00 2001 From: scottbw Date: Wed, 18 Jan 2017 14:26:10 +0000 Subject: [PATCH] updated role restrictions --- .../services/RestrictionsService.java | 13 +++++++ .../impl/RestrictionsServiceImpl.java | 36 ++++++++++--------- 2 files changed, 33 insertions(+), 16 deletions(-) diff --git a/src/main/java/uk/ac/ox/it/ords/security/services/RestrictionsService.java b/src/main/java/uk/ac/ox/it/ords/security/services/RestrictionsService.java index 4ff5a22..2ff97ed 100644 --- a/src/main/java/uk/ac/ox/it/ords/security/services/RestrictionsService.java +++ b/src/main/java/uk/ac/ox/it/ords/security/services/RestrictionsService.java @@ -1,5 +1,7 @@ package uk.ac.ox.it.ords.security.services; +import uk.ac.ox.it.ords.security.services.impl.RestrictionsServiceImpl; + public interface RestrictionsService { public abstract int getMaximumUploadSize(); @@ -10,4 +12,15 @@ public interface RestrictionsService { public abstract int getMqxiumumDatasetsPerDatabase(); + public static class Factory{ + + static RestrictionsService provider; + + public static RestrictionsService getInstance(){ + if (provider == null) provider = new RestrictionsServiceImpl(); + return provider; + } + + } + } diff --git a/src/main/java/uk/ac/ox/it/ords/security/services/impl/RestrictionsServiceImpl.java b/src/main/java/uk/ac/ox/it/ords/security/services/impl/RestrictionsServiceImpl.java index 2c69e2e..37b716f 100644 --- a/src/main/java/uk/ac/ox/it/ords/security/services/impl/RestrictionsServiceImpl.java +++ b/src/main/java/uk/ac/ox/it/ords/security/services/impl/RestrictionsServiceImpl.java @@ -8,37 +8,41 @@ public class RestrictionsServiceImpl implements RestrictionsService { @Override public int getMaximumUploadSize() { - if (SecurityUtils.getSubject().hasRole("PremiumUser")) return 25000; - if (SecurityUtils.getSubject().hasRole("StandardUser")) return 1000; - if (SecurityUtils.getSubject().hasRole("BasicUser")) return 16; - if (SecurityUtils.getSubject().hasRole("User")) return 1; + if (SecurityUtils.getSubject().hasRole("administrator")) return 25000; + if (SecurityUtils.getSubject().hasRole("premiumuser")) return 25000; + if (SecurityUtils.getSubject().hasRole("standarduser")) return 1000; + if (SecurityUtils.getSubject().hasRole("basicuser")) return 16; + if (SecurityUtils.getSubject().hasRole("user") || SecurityUtils.getSubject().hasRole("localuser")) return 1; return 0; } @Override public int getMaximumNumberOfLiveProjects() { - if (SecurityUtils.getSubject().hasRole("PremiumUser")) return 9999; - if (SecurityUtils.getSubject().hasRole("StandardUser")) return 9999; - if (SecurityUtils.getSubject().hasRole("BasicUser")) return 3; - if (SecurityUtils.getSubject().hasRole("User")) return 1; + if (SecurityUtils.getSubject().hasRole("administrator")) return 9999; + if (SecurityUtils.getSubject().hasRole("premiumuser")) return 9999; + if (SecurityUtils.getSubject().hasRole("standarduser")) return 9999; + if (SecurityUtils.getSubject().hasRole("basicuser")) return 3; + if (SecurityUtils.getSubject().hasRole("user") || SecurityUtils.getSubject().hasRole("localuser")) return 1; return 0; } @Override public int getMaximumDatabasesPerProject() { - if (SecurityUtils.getSubject().hasRole("PremiumUser")) return 9999; - if (SecurityUtils.getSubject().hasRole("StandardUser")) return 3; - if (SecurityUtils.getSubject().hasRole("BasicUser")) return 3; - if (SecurityUtils.getSubject().hasRole("User")) return 3; + if (SecurityUtils.getSubject().hasRole("administrator")) return 9999; + if (SecurityUtils.getSubject().hasRole("premiumuser")) return 9999; + if (SecurityUtils.getSubject().hasRole("standarduser")) return 3; + if (SecurityUtils.getSubject().hasRole("basicuser")) return 3; + if (SecurityUtils.getSubject().hasRole("user") || SecurityUtils.getSubject().hasRole("localuser")) return 3; return 0; } @Override public int getMqxiumumDatasetsPerDatabase() { - if (SecurityUtils.getSubject().hasRole("PremiumUser")) return 9999; - if (SecurityUtils.getSubject().hasRole("StandardUser")) return 9999; - if (SecurityUtils.getSubject().hasRole("BasicUser")) return 3; - if (SecurityUtils.getSubject().hasRole("User")) return 3; + if (SecurityUtils.getSubject().hasRole("administrator")) return 9999; + if (SecurityUtils.getSubject().hasRole("premiumuser")) return 9999; + if (SecurityUtils.getSubject().hasRole("standarduser")) return 9999; + if (SecurityUtils.getSubject().hasRole("basicuser")) return 3; + if (SecurityUtils.getSubject().hasRole("user") || SecurityUtils.getSubject().hasRole("localuser")) return 3; return 0; }