Class ArrayBindingSet

    • Constructor Detail

      • ArrayBindingSet

        public ArrayBindingSet​(String... names)
        Creates a new Array-based BindingSet for the supplied bindings names. The supplied list of binding names is assumed to be constant; care should be taken that the contents of this array doesn't change after supplying it to this solution.
        Parameters:
        names - The binding names.
    • Method Detail

      • getDirectSetBinding

        public BiConsumer<Value,​ArrayBindingSet> getDirectSetBinding​(String bindingName)
        This is used to generate a direct setter into the array to put a binding value into. Can be used to avoid many comparisons to the bindingNames.
        Parameters:
        bindingName - for which you want the setter
        Returns:
        the setter biconsumer which can operate on any ArrayBindingSet but should only be used on ones with an identical bindingNames array. Otherwise returns null.
      • getBindingNames

        public Set<String> getBindingNames()
        Description copied from interface: BindingSet
        Gets the names of the bindings in this BindingSet.
        Specified by:
        getBindingNames in interface BindingSet
        Returns:
        A set of binding names.
      • getValue

        public Value getValue​(String bindingName)
        Description copied from interface: BindingSet
        Gets the value of the binding with the specified name from this BindingSet.
        Specified by:
        getValue in interface BindingSet
        Parameters:
        bindingName - The name of the binding.
        Returns:
        The value of the binding with the specified name, or null if there is no such binding in this BindingSet.
      • getBinding

        public Binding getBinding​(String bindingName)
        Description copied from interface: BindingSet
        Gets the binding with the specified name from this BindingSet.
        Specified by:
        getBinding in interface BindingSet
        Parameters:
        bindingName - The name of the binding.
        Returns:
        The binding with the specified name, or null if there is no such binding in this BindingSet.
      • hasBinding

        public boolean hasBinding​(String bindingName)
        Description copied from interface: BindingSet
        Checks whether this BindingSet has a binding with the specified name.
        Specified by:
        hasBinding in interface BindingSet
        Parameters:
        bindingName - The name of the binding.
        Returns:
        true if this BindingSet has a binding with the specified name, false otherwise.
      • iterator

        public Iterator<Binding> iterator()
        Description copied from interface: BindingSet
        Creates an iterator over the bindings in this BindingSet. This only returns bindings with non-null values. An implementation is free to return the bindings in arbitrary order.
        Specified by:
        iterator in interface BindingSet
        Specified by:
        iterator in interface Iterable<Binding>
      • size

        public int size()
        Description copied from interface: BindingSet
        Returns the number of bindings in this BindingSet.
        Specified by:
        size in interface BindingSet
        Returns:
        The number of bindings in this BindingSet.
      • getSortedBindingNames

        public List<String> getSortedBindingNames()
      • addBinding

        public void addBinding​(Binding binding)
        Description copied from interface: MutableBindingSet
        Adds a binding to the binding set.
        Specified by:
        addBinding in interface MutableBindingSet
        Parameters:
        binding - The binding to add to the binding set.