Search in sources :

Example 1 with PermissionCalculator

use of me.lucko.luckperms.common.calculators.PermissionCalculator in project LuckPerms by lucko.

the class SpongeCalculatorFactory method build.

@Override
public PermissionCalculator build(Contexts contexts, PermissionCalculatorMetadata metadata) {
    ImmutableList.Builder<PermissionProcessor> processors = ImmutableList.builder();
    processors.add(new MapProcessor());
    if (this.plugin.getConfiguration().get(ConfigKeys.APPLY_SPONGE_IMPLICIT_WILDCARDS)) {
        processors.add(new SpongeWildcardProcessor());
    }
    if (this.plugin.getConfiguration().get(ConfigKeys.APPLYING_REGEX)) {
        processors.add(new RegexProcessor());
    }
    if (this.plugin.getConfiguration().get(ConfigKeys.APPLYING_WILDCARDS)) {
        processors.add(new WildcardProcessor());
    }
    if (this.plugin.getConfiguration().get(ConfigKeys.APPLY_SPONGE_DEFAULT_SUBJECTS)) {
        if (metadata.getHolderType().isUser()) {
            processors.add(new UserDefaultsProcessor(this.plugin.getService(), contexts.getContexts().makeImmutable()));
        } else if (metadata.getHolderType().isGroup()) {
            processors.add(new GroupDefaultsProcessor(this.plugin.getService(), contexts.getContexts().makeImmutable()));
        }
    }
    return registerCalculator(new PermissionCalculator(this.plugin, metadata, processors.build()));
}
Also used : UserDefaultsProcessor(me.lucko.luckperms.sponge.processors.UserDefaultsProcessor) RegexProcessor(me.lucko.luckperms.common.processors.RegexProcessor) ImmutableList(com.google.common.collect.ImmutableList) GroupDefaultsProcessor(me.lucko.luckperms.sponge.processors.GroupDefaultsProcessor) SpongeWildcardProcessor(me.lucko.luckperms.sponge.processors.SpongeWildcardProcessor) PermissionCalculator(me.lucko.luckperms.common.calculators.PermissionCalculator) PermissionProcessor(me.lucko.luckperms.common.processors.PermissionProcessor) SpongeWildcardProcessor(me.lucko.luckperms.sponge.processors.SpongeWildcardProcessor) WildcardProcessor(me.lucko.luckperms.common.processors.WildcardProcessor) MapProcessor(me.lucko.luckperms.common.processors.MapProcessor)

Example 2 with PermissionCalculator

use of me.lucko.luckperms.common.calculators.PermissionCalculator in project LuckPerms by lucko.

the class NukkitCalculatorFactory method build.

@Override
public PermissionCalculator build(Contexts contexts, PermissionCalculatorMetadata metadata) {
    ImmutableList.Builder<PermissionProcessor> processors = ImmutableList.builder();
    processors.add(new MapProcessor());
    if (this.plugin.getConfiguration().get(ConfigKeys.APPLY_NUKKIT_CHILD_PERMISSIONS)) {
        processors.add(new ChildProcessor(this.plugin));
    }
    if (this.plugin.getConfiguration().get(ConfigKeys.APPLYING_REGEX)) {
        processors.add(new RegexProcessor());
    }
    if (this.plugin.getConfiguration().get(ConfigKeys.APPLYING_WILDCARDS)) {
        processors.add(new WildcardProcessor());
    }
    if (this.plugin.getConfiguration().get(ConfigKeys.APPLY_NUKKIT_DEFAULT_PERMISSIONS) && metadata.getHolderType() == HolderType.USER) {
        processors.add(new DefaultsProcessor(this.plugin, contexts.hasSetting(LookupSetting.IS_OP)));
    }
    return registerCalculator(new PermissionCalculator(this.plugin, metadata, processors.build()));
}
Also used : RegexProcessor(me.lucko.luckperms.common.processors.RegexProcessor) DefaultsProcessor(me.lucko.luckperms.nukkit.processors.DefaultsProcessor) ImmutableList(com.google.common.collect.ImmutableList) ChildProcessor(me.lucko.luckperms.nukkit.processors.ChildProcessor) PermissionCalculator(me.lucko.luckperms.common.calculators.PermissionCalculator) PermissionProcessor(me.lucko.luckperms.common.processors.PermissionProcessor) WildcardProcessor(me.lucko.luckperms.common.processors.WildcardProcessor) MapProcessor(me.lucko.luckperms.common.processors.MapProcessor)

Example 3 with PermissionCalculator

use of me.lucko.luckperms.common.calculators.PermissionCalculator in project LuckPerms by lucko.

the class SubjectCachedData method build.

@Override
public PermissionCalculator build(Contexts contexts, PermissionCalculatorMetadata metadata) {
    ImmutableList.Builder<PermissionProcessor> processors = ImmutableList.builder();
    processors.add(new MapProcessor());
    processors.add(new SpongeWildcardProcessor());
    processors.add(new WildcardProcessor());
    if (!this.subject.getParentCollection().isDefaultsCollection()) {
        processors.add(new FixedDefaultsProcessor(this.subject.getService(), contexts.getContexts().makeImmutable(), this.subject.getDefaults()));
    }
    return new PermissionCalculator(this.plugin, metadata, processors.build());
}
Also used : ImmutableList(com.google.common.collect.ImmutableList) FixedDefaultsProcessor(me.lucko.luckperms.sponge.processors.FixedDefaultsProcessor) SpongeWildcardProcessor(me.lucko.luckperms.sponge.processors.SpongeWildcardProcessor) PermissionCalculator(me.lucko.luckperms.common.calculators.PermissionCalculator) PermissionProcessor(me.lucko.luckperms.common.processors.PermissionProcessor) SpongeWildcardProcessor(me.lucko.luckperms.sponge.processors.SpongeWildcardProcessor) WildcardProcessor(me.lucko.luckperms.common.processors.WildcardProcessor) MapProcessor(me.lucko.luckperms.common.processors.MapProcessor)

Example 4 with PermissionCalculator

use of me.lucko.luckperms.common.calculators.PermissionCalculator in project LuckPerms by lucko.

the class BukkitCalculatorFactory method build.

@Override
public PermissionCalculator build(Contexts contexts, PermissionCalculatorMetadata metadata) {
    ImmutableList.Builder<PermissionProcessor> processors = ImmutableList.builder();
    processors.add(new MapProcessor());
    if (this.plugin.getConfiguration().get(ConfigKeys.APPLY_BUKKIT_CHILD_PERMISSIONS)) {
        processors.add(new ChildProcessor(this.plugin));
    }
    if (this.plugin.getConfiguration().get(ConfigKeys.APPLYING_REGEX)) {
        processors.add(new RegexProcessor());
    }
    if (this.plugin.getConfiguration().get(ConfigKeys.APPLYING_WILDCARDS)) {
        processors.add(new WildcardProcessor());
    }
    if (this.plugin.getConfiguration().get(ConfigKeys.APPLY_BUKKIT_DEFAULT_PERMISSIONS) && metadata.getHolderType() == HolderType.USER) {
        processors.add(new DefaultsProcessor(this.plugin, contexts.hasSetting(LookupSetting.IS_OP)));
    }
    return registerCalculator(new PermissionCalculator(this.plugin, metadata, processors.build()));
}
Also used : RegexProcessor(me.lucko.luckperms.common.processors.RegexProcessor) DefaultsProcessor(me.lucko.luckperms.bukkit.processors.DefaultsProcessor) ImmutableList(com.google.common.collect.ImmutableList) ChildProcessor(me.lucko.luckperms.bukkit.processors.ChildProcessor) PermissionCalculator(me.lucko.luckperms.common.calculators.PermissionCalculator) PermissionProcessor(me.lucko.luckperms.common.processors.PermissionProcessor) WildcardProcessor(me.lucko.luckperms.common.processors.WildcardProcessor) MapProcessor(me.lucko.luckperms.common.processors.MapProcessor)

Example 5 with PermissionCalculator

use of me.lucko.luckperms.common.calculators.PermissionCalculator in project LuckPerms by lucko.

the class BungeeCalculatorFactory method build.

@Override
public PermissionCalculator build(Contexts contexts, PermissionCalculatorMetadata metadata) {
    ImmutableList.Builder<PermissionProcessor> processors = ImmutableList.builder();
    processors.add(new MapProcessor());
    if (this.plugin.getConfiguration().get(ConfigKeys.APPLYING_REGEX)) {
        processors.add(new RegexProcessor());
    }
    if (this.plugin.getConfiguration().get(ConfigKeys.APPLYING_WILDCARDS)) {
        processors.add(new WildcardProcessor());
    }
    return registerCalculator(new PermissionCalculator(this.plugin, metadata, processors.build()));
}
Also used : RegexProcessor(me.lucko.luckperms.common.processors.RegexProcessor) ImmutableList(com.google.common.collect.ImmutableList) PermissionCalculator(me.lucko.luckperms.common.calculators.PermissionCalculator) PermissionProcessor(me.lucko.luckperms.common.processors.PermissionProcessor) WildcardProcessor(me.lucko.luckperms.common.processors.WildcardProcessor) MapProcessor(me.lucko.luckperms.common.processors.MapProcessor)

Aggregations

ImmutableList (com.google.common.collect.ImmutableList)5 PermissionCalculator (me.lucko.luckperms.common.calculators.PermissionCalculator)5 MapProcessor (me.lucko.luckperms.common.processors.MapProcessor)5 PermissionProcessor (me.lucko.luckperms.common.processors.PermissionProcessor)5 WildcardProcessor (me.lucko.luckperms.common.processors.WildcardProcessor)5 RegexProcessor (me.lucko.luckperms.common.processors.RegexProcessor)4 SpongeWildcardProcessor (me.lucko.luckperms.sponge.processors.SpongeWildcardProcessor)2 ChildProcessor (me.lucko.luckperms.bukkit.processors.ChildProcessor)1 DefaultsProcessor (me.lucko.luckperms.bukkit.processors.DefaultsProcessor)1 ChildProcessor (me.lucko.luckperms.nukkit.processors.ChildProcessor)1 DefaultsProcessor (me.lucko.luckperms.nukkit.processors.DefaultsProcessor)1 FixedDefaultsProcessor (me.lucko.luckperms.sponge.processors.FixedDefaultsProcessor)1 GroupDefaultsProcessor (me.lucko.luckperms.sponge.processors.GroupDefaultsProcessor)1 UserDefaultsProcessor (me.lucko.luckperms.sponge.processors.UserDefaultsProcessor)1