blob: c01fc663f985233a0f9d74a12276cf80a75b4e90 [file] [log] [blame]
Michael Hanl19390652016-01-16 11:01:24 +01001package de.ids_mannheim.korap.web.service;
2
Michael Hanldaf86602016-05-12 14:31:52 +02003import de.ids_mannheim.korap.config.ContextHolder;
Michael Hanl19390652016-01-16 11:01:24 +01004import de.ids_mannheim.korap.config.KustvaktConfiguration;
5import de.ids_mannheim.korap.exceptions.KustvaktException;
Michael Hanl19390652016-01-16 11:01:24 +01006import de.ids_mannheim.korap.resources.Corpus;
7import de.ids_mannheim.korap.resources.Permissions;
8import de.ids_mannheim.korap.security.ac.PolicyBuilder;
Michael Hanldaf86602016-05-12 14:31:52 +02009import de.ids_mannheim.korap.security.ac.ResourceFinder;
10import de.ids_mannheim.korap.security.ac.SecurityManager;
Michael Hanl19390652016-01-16 11:01:24 +010011import de.ids_mannheim.korap.user.User;
12
Michael Hanl19390652016-01-16 11:01:24 +010013/**
14 * @author hanl
15 * @date 15/01/2016
16 */
Michael Hanldaf86602016-05-12 14:31:52 +020017public class PolicyLoader implements BootableBeanInterface {
Michael Hanl19390652016-01-16 11:01:24 +010018
19 @Override
Michael Hanl8abaf9e2016-05-23 16:46:35 +020020 public void load (ContextHolder beans) throws KustvaktException {
Michael Hanldaf86602016-05-12 14:31:52 +020021 SecurityManager.overrideProviders(beans);
22 ResourceFinder.overrideProviders(beans);
23
24 User user = User.UserFactory
25 .toUser(KustvaktConfiguration.KUSTVAKT_USER);
margaretha5af82372017-02-16 14:22:58 +010026 KustvaktConfiguration config =beans.getConfiguration();
Michael Hanldaf86602016-05-12 14:31:52 +020027 PolicyBuilder builder = new PolicyBuilder(user);
margaretha5af82372017-02-16 14:22:58 +010028// builder.addCondition("public");
29// builder.setResources(new Corpus("GOE"));
30// builder.setPermissions(Permissions.Permission.READ);
31// builder.create();
Michael Hanldaf86602016-05-12 14:31:52 +020032
33 builder = new PolicyBuilder(user);
34 builder.addCondition("public");
margaretha5af82372017-02-16 14:22:58 +010035 builder.setResources(new Corpus(config.getDefaultVirtualCollectionId()));
Michael Hanldaf86602016-05-12 14:31:52 +020036 builder.setPermissions(Permissions.Permission.READ);
37 builder.create();
38
margaretha5af82372017-02-16 14:22:58 +010039// 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 Hanl19390652016-01-16 11:01:24 +010047 }
48
Michael Hanl8abaf9e2016-05-23 16:46:35 +020049
Michael Hanl19390652016-01-16 11:01:24 +010050 @Override
Michael Hanl8abaf9e2016-05-23 16:46:35 +020051 public Class<? extends BootableBeanInterface>[] getDependencies () {
Michael Hanl88b49db2016-02-16 17:15:43 +010052 return new Class[] { UserLoader.class };
Michael Hanl19390652016-01-16 11:01:24 +010053 }
54}