Interface NamedBindingBuilder<T>

    • Method Detail

      • to

        NamedBindingBuilder<T> to​(java.lang.Class<? super T> contract)
        Bind a new contract to a service.
        Parameters:
        contract - contract type.
        Returns:
        updated binder.
      • to

        NamedBindingBuilder<T> to​(TypeLiteral<?> contract)
        Bind a new contract to a service.
        Parameters:
        contract - contract type.
        Returns:
        updated binder.
      • loadedBy

        NamedBindingBuilder<T> loadedBy​(HK2Loader loader)
        Custom HK2 loader to be used when service class is about to be loaded.
        Parameters:
        loader - custom service loader.
        Returns:
        updated binder.
      • withMetadata

        NamedBindingBuilder<T> withMetadata​(java.lang.String key,
                                            java.lang.String value)
        Add binding descriptor metadata. The metadata can be later used to e.g. filter binding descriptors. If this is for Factory descriptors the metadata will be placed on both the Factory as a service and on the Factories Factory.provide() method
        Parameters:
        key - metadata key.
        value - metadata value.
        Returns:
        updated binder.
      • withMetadata

        NamedBindingBuilder<T> withMetadata​(java.lang.String key,
                                            java.util.List<java.lang.String> values)
        Add binding descriptor metadata. The metadata can be later used to e.g. filter binding descriptors. If this is for Factory descriptors the metadata will be placed on both the Factory as a service and on the Factories Factory.provide() method
        Parameters:
        key - metadata key.
        values - metadata values.
        Returns:
        updated binder.
      • qualifiedBy

        NamedBindingBuilder<T> qualifiedBy​(java.lang.annotation.Annotation annotation)
        Add a binging qualifier annotation. If this is being used with a Factory then both the Factory Service and the Factory.provide() method will get the qualifier
        Parameters:
        annotation - qualifier annotation.
        Returns:
        updated binder.
      • in

        ScopedNamedBindingBuilder<T> in​(java.lang.Class<? extends java.lang.annotation.Annotation> scopeAnnotation)
        Scope a binding.
        Parameters:
        scopeAnnotation - scope annotation.
        Returns:
        updated binding.
      • ranked

        void ranked​(int rank)
        Rank the binding. The higher rank, the more prominent position in an injected iterable provider for a contract.
        Parameters:
        rank - binding rank to be used to resolve ordering in case of multiple services are bound to the same contract.
      • proxy

        NamedBindingBuilder<T> proxy​(boolean proxiable)
        Set proxy flag on the binding.
        Parameters:
        proxiable - flag to determine if the binding should be proxiable.
      • asType

        NamedBindingBuilder<T> asType​(java.lang.reflect.Type t)
        Call this if the parameterized type of the implementation class is known. This must only be called with a ParameterizedType
        Parameters:
        t - The non-null ParameterizedType describing the implementation
        Returns:
        A DescriptorBuilder with the given implementationType