| Michael Hanl | 1939065 | 2016-01-16 11:01:24 +0100 | [diff] [blame] | 1 | package de.ids_mannheim.korap.web.service; |
| 2 | |
| Michael Hanl | daf8660 | 2016-05-12 14:31:52 +0200 | [diff] [blame] | 3 | import de.ids_mannheim.korap.config.ContextHolder; |
| Michael Hanl | 1939065 | 2016-01-16 11:01:24 +0100 | [diff] [blame] | 4 | import de.ids_mannheim.korap.config.KustvaktConfiguration; |
| 5 | import de.ids_mannheim.korap.exceptions.KustvaktException; |
| Michael Hanl | 1939065 | 2016-01-16 11:01:24 +0100 | [diff] [blame] | 6 | import de.ids_mannheim.korap.resources.Corpus; |
| 7 | import de.ids_mannheim.korap.resources.Permissions; |
| 8 | import de.ids_mannheim.korap.security.ac.PolicyBuilder; |
| Michael Hanl | daf8660 | 2016-05-12 14:31:52 +0200 | [diff] [blame] | 9 | import de.ids_mannheim.korap.security.ac.ResourceFinder; |
| 10 | import de.ids_mannheim.korap.security.ac.SecurityManager; |
| Michael Hanl | 1939065 | 2016-01-16 11:01:24 +0100 | [diff] [blame] | 11 | import de.ids_mannheim.korap.user.User; |
| 12 | |
| Michael Hanl | 1939065 | 2016-01-16 11:01:24 +0100 | [diff] [blame] | 13 | /** |
| 14 | * @author hanl |
| 15 | * @date 15/01/2016 |
| 16 | */ |
| Michael Hanl | daf8660 | 2016-05-12 14:31:52 +0200 | [diff] [blame] | 17 | public class PolicyLoader implements BootableBeanInterface { |
| Michael Hanl | 1939065 | 2016-01-16 11:01:24 +0100 | [diff] [blame] | 18 | |
| 19 | @Override |
| Michael Hanl | 8abaf9e | 2016-05-23 16:46:35 +0200 | [diff] [blame] | 20 | public void load (ContextHolder beans) throws KustvaktException { |
| Michael Hanl | daf8660 | 2016-05-12 14:31:52 +0200 | [diff] [blame] | 21 | SecurityManager.overrideProviders(beans); |
| 22 | ResourceFinder.overrideProviders(beans); |
| 23 | |
| 24 | User user = User.UserFactory |
| 25 | .toUser(KustvaktConfiguration.KUSTVAKT_USER); |
| margaretha | 5af8237 | 2017-02-16 14:22:58 +0100 | [diff] [blame^] | 26 | KustvaktConfiguration config =beans.getConfiguration(); |
| Michael Hanl | daf8660 | 2016-05-12 14:31:52 +0200 | [diff] [blame] | 27 | PolicyBuilder builder = new PolicyBuilder(user); |
| margaretha | 5af8237 | 2017-02-16 14:22:58 +0100 | [diff] [blame^] | 28 | // builder.addCondition("public"); |
| 29 | // builder.setResources(new Corpus("GOE")); |
| 30 | // builder.setPermissions(Permissions.Permission.READ); |
| 31 | // builder.create(); |
| Michael Hanl | daf8660 | 2016-05-12 14:31:52 +0200 | [diff] [blame] | 32 | |
| 33 | builder = new PolicyBuilder(user); |
| 34 | builder.addCondition("public"); |
| margaretha | 5af8237 | 2017-02-16 14:22:58 +0100 | [diff] [blame^] | 35 | builder.setResources(new Corpus(config.getDefaultVirtualCollectionId())); |
| Michael Hanl | daf8660 | 2016-05-12 14:31:52 +0200 | [diff] [blame] | 36 | builder.setPermissions(Permissions.Permission.READ); |
| 37 | builder.create(); |
| 38 | |
| margaretha | 5af8237 | 2017-02-16 14:22:58 +0100 | [diff] [blame^] | 39 | // KustvaktResource tt = new Foundry("tt"); |
| 40 | // tt.setName("TreeTagger"); |
| 41 | // tt.setDescription("todo ..."); |
| 42 | // builder = new PolicyBuilder(user); |
| 43 | // builder.addCondition("public"); |
| 44 | // builder.setResources(tt); |
| 45 | // builder.setPermissions(Permissions.Permission.READ); |
| 46 | // builder.create(); |
| Michael Hanl | 1939065 | 2016-01-16 11:01:24 +0100 | [diff] [blame] | 47 | } |
| 48 | |
| Michael Hanl | 8abaf9e | 2016-05-23 16:46:35 +0200 | [diff] [blame] | 49 | |
| Michael Hanl | 1939065 | 2016-01-16 11:01:24 +0100 | [diff] [blame] | 50 | @Override |
| Michael Hanl | 8abaf9e | 2016-05-23 16:46:35 +0200 | [diff] [blame] | 51 | public Class<? extends BootableBeanInterface>[] getDependencies () { |
| Michael Hanl | 88b49db | 2016-02-16 17:15:43 +0100 | [diff] [blame] | 52 | return new Class[] { UserLoader.class }; |
| Michael Hanl | 1939065 | 2016-01-16 11:01:24 +0100 | [diff] [blame] | 53 | } |
| 54 | } |