Class AbstractNodeBuilder<N extends net.luckperms.api.node.ScopedNode<N,B>,B extends net.luckperms.api.node.NodeBuilder<N,B>>

java.lang.Object
me.lucko.luckperms.common.node.AbstractNodeBuilder<N,B>
All Implemented Interfaces:
net.luckperms.api.node.NodeBuilder<N,B>
Direct Known Subclasses:
DisplayName.Builder, Inheritance.Builder, Meta.Builder, Permission.Builder, Prefix.Builder, RegexPermission.Builder, Suffix.Builder, Weight.Builder

public abstract class AbstractNodeBuilder<N extends net.luckperms.api.node.ScopedNode<N,B>,B extends net.luckperms.api.node.NodeBuilder<N,B>> extends Object implements net.luckperms.api.node.NodeBuilder<N,B>
  • Field Details

    • value

      protected boolean value
    • expireAt

      protected long expireAt
    • context

      protected net.luckperms.api.context.ImmutableContextSet.Builder context
    • metadata

      protected final Map<net.luckperms.api.node.metadata.NodeMetadataKey<?>,Object> metadata
  • Constructor Details

    • AbstractNodeBuilder

      protected AbstractNodeBuilder(boolean value, long expireAt, net.luckperms.api.context.ImmutableContextSet context, Map<net.luckperms.api.node.metadata.NodeMetadataKey<?>,Object> metadata)
    • AbstractNodeBuilder

      protected AbstractNodeBuilder()
  • Method Details

    • value

      public @NonNull B value(boolean value)
      Specified by:
      value in interface net.luckperms.api.node.NodeBuilder<N extends net.luckperms.api.node.ScopedNode<N,B>,B extends net.luckperms.api.node.NodeBuilder<N,B>>
    • negated

      public @NonNull B negated(boolean negated)
      Specified by:
      negated in interface net.luckperms.api.node.NodeBuilder<N extends net.luckperms.api.node.ScopedNode<N,B>,B extends net.luckperms.api.node.NodeBuilder<N,B>>
    • expiry

      public @NonNull B expiry(long expiryEpochSeconds)
      Specified by:
      expiry in interface net.luckperms.api.node.NodeBuilder<N extends net.luckperms.api.node.ScopedNode<N,B>,B extends net.luckperms.api.node.NodeBuilder<N,B>>
    • expiry

      public @NonNull B expiry(@Nullable TemporalAccessor expiry)
      Specified by:
      expiry in interface net.luckperms.api.node.NodeBuilder<N extends net.luckperms.api.node.ScopedNode<N,B>,B extends net.luckperms.api.node.NodeBuilder<N,B>>
    • expiry

      public @NonNull B expiry(@Nullable TemporalAmount duration)
      Specified by:
      expiry in interface net.luckperms.api.node.NodeBuilder<N extends net.luckperms.api.node.ScopedNode<N,B>,B extends net.luckperms.api.node.NodeBuilder<N,B>>
    • clearExpiry

      public @NonNull B clearExpiry()
      Specified by:
      clearExpiry in interface net.luckperms.api.node.NodeBuilder<N extends net.luckperms.api.node.ScopedNode<N,B>,B extends net.luckperms.api.node.NodeBuilder<N,B>>
    • context

      public @NonNull B context(@NonNull net.luckperms.api.context.ContextSet contextSet)
      Specified by:
      context in interface net.luckperms.api.node.NodeBuilder<N extends net.luckperms.api.node.ScopedNode<N,B>,B extends net.luckperms.api.node.NodeBuilder<N,B>>
    • withContext

      public @NonNull B withContext(@NonNull String key, @NonNull String value)
      Specified by:
      withContext in interface net.luckperms.api.node.NodeBuilder<N extends net.luckperms.api.node.ScopedNode<N,B>,B extends net.luckperms.api.node.NodeBuilder<N,B>>
    • withContext

      public @NonNull B withContext(@NonNull net.luckperms.api.context.ContextSet contextSet)
      Specified by:
      withContext in interface net.luckperms.api.node.NodeBuilder<N extends net.luckperms.api.node.ScopedNode<N,B>,B extends net.luckperms.api.node.NodeBuilder<N,B>>
    • withMetadata

      public <T> @NonNull B withMetadata(@NonNull net.luckperms.api.node.metadata.NodeMetadataKey<T> key, @Nullable T metadata)
      Specified by:
      withMetadata in interface net.luckperms.api.node.NodeBuilder<N extends net.luckperms.api.node.ScopedNode<N,B>,B extends net.luckperms.api.node.NodeBuilder<N,B>>
    • ensureDefined

      protected static void ensureDefined(Object value, String description)