## Uses of Class
com.hazelcast.projection.Projection

- Packages that use Projection
  Package | Description
  --- | ---
  com.hazelcast.client.proxy | This package contains client side proxy implementations of the different Hazelcast data structures and operation types
  com.hazelcast.core | Provides core API interfaces/classes.
  com.hazelcast.jet.core.processor | Contains static utility classes with factories of Jet processors.
  com.hazelcast.jet.pipeline | The Pipeline API is Jet's high-level API to build and execute distributed computation jobs.
  com.hazelcast.projection | Contains classes related to projections.

- - ### Uses of Projection in com.hazelcast.client.proxy

    Methods in com.hazelcast.client.proxy with parameters of type Projection
    Modifier and Type | Method and Description
    --- | ---
    `<R> Iterator<R>` | ClientMapProxy.`iterator(int fetchSize, int partitionId, Projection<Map.Entry<K,V>,R> projection, Predicate<K,V> predicate)` Returns an iterator for iterating the result of the projection on entries in the `partitionId` which satisfy the `predicate`.
    `<R> Collection<R>` | ClientMapProxy.`project(Projection<Map.Entry<K,V>,R> projection)`
    `<R> Collection<R>` | ClientMapProxy.`project(Projection<Map.Entry<K,V>,R> projection, Predicate<K,V> predicate)`

  - ### Uses of Projection in com.hazelcast.core

    Methods in com.hazelcast.core with parameters of type Projection
    Modifier and Type | Method and Description
    --- | ---
    `<R> Collection<R>` | IMap.`project(Projection<Map.Entry<K,V>,R> projection)` Applies the projection logic on all map entries and returns the result
    `<R> Collection<R>` | IMap.`project(Projection<Map.Entry<K,V>,R> projection, Predicate<K,V> predicate)` Applies the projection logic on map entries filtered with the Predicated and returns the result

  - ### Uses of Projection in com.hazelcast.jet.core.processor

    Methods in com.hazelcast.jet.core.processor with parameters of type Projection
    Modifier and Type | Method and Description
    --- | ---
    `static <T,K,V> ProcessorMetaSupplier` | SourceProcessors.`readMapP(String mapName, Predicate<? super K,? super V> predicate, Projection<? super Map.Entry<K,V>,? extends T> projection)` Returns a supplier of processors for `Sources.map(String, Predicate, Projection)`.
    `static <T,K,V> ProcessorSupplier` | SourceProcessors.`readRemoteMapP(String mapName, ClientConfig clientConfig, Predicate<? super K,? super V> predicate, Projection<? super Map.Entry<K,V>,? extends T> projection)` Returns a supplier of processors for `Sources.remoteMap(String, ClientConfig, Predicate, Projection)`.

  - ### Uses of Projection in com.hazelcast.jet.pipeline

    Methods in com.hazelcast.jet.pipeline with parameters of type Projection
    Modifier and Type | Method and Description
    --- | ---
    `static <T,K,V> BatchSource<T>` | Sources.`map(IMap<? extends K,? extends V> map, Predicate<? super K,? super V> predicate, Projection<? super Map.Entry<K,V>,? extends T> projection)` Returns a source that fetches entries from the given Hazelcast `IMap`.
    `static <T,K,V> BatchSource<T>` | Sources.`map(String mapName, Predicate<? super K,? super V> predicate, Projection<? super Map.Entry<K,V>,? extends T> projection)` Returns a source that fetches entries from a local Hazelcast `IMap` with the specified name.
    `static <T,K,V> BatchSource<T>` | Sources.`remoteMap(String mapName, ClientConfig clientConfig, Predicate<? super K,? super V> predicate, Projection<? super Map.Entry<K,V>,? extends T> projection)` Returns a source that fetches entries from a remote Hazelcast `IMap` with the specified name in a remote cluster identified by the supplied `ClientConfig`.

  - ### Uses of Projection in com.hazelcast.projection

    Methods in com.hazelcast.projection that return Projection
    Modifier and Type | Method and Description
    --- | ---
    `static <T> Projection<T,T>` | Projections.`identity()` Returns a projection that does no transformation.
    `static <I> Projection<I,Object[]>` | Projections.`multiAttribute(String... attributePaths)` Returns a projection that extracts the value of the given `attributePaths`.
    `static <I,O> Projection<I,O>` | Projections.`singleAttribute(String attributePath)` Returns a projection that extracts the value of the given `attributePath`.

Copyright © 2020. All rights reserved.