http://git-wip-us.apache.org/repos/asf/ignite/blob/a3f845b0/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/FlatIterator.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/FlatIterator.java b/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/FlatIterator.java new file mode 100644 index 0000000..d890e32 --- /dev/null +++ b/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/FlatIterator.java @@ -0,0 +1,102 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.ignite.internal.util.lang.gridfunc; + +import java.util.Iterator; +import java.util.NoSuchElementException; +import org.apache.ignite.internal.util.lang.GridIteratorAdapter; +import org.apache.ignite.internal.util.typedef.internal.S; + +/** + * Iterator over the elements of given iterators. + * + * @param <T> Type of the inner iterators. + */ +public class FlatIterator<T> extends GridIteratorAdapter<T> { + /** */ + private static final long serialVersionUID = 0L; + + /** */ + private Iterator<?> iter; + + /** */ + private Iterator<T> next; + + /** */ + private boolean moved; + + /** */ + private boolean more; + + /** + * @param iterable Input iterable of iterators. + */ + public FlatIterator(Iterable<?> iterable) { + iter = iterable.iterator(); + moved = true; + } + + /** {@inheritDoc} */ + @SuppressWarnings("unchecked") + @Override public boolean hasNextX() { + if (!moved) + return more; + + moved = false; + + if (next != null && next.hasNext()) + return more = true; + + while (iter.hasNext()) { + if (iter instanceof Iterable) + next = (Iterator)((Iterable)iter).iterator().next(); + else if (iter instanceof Iterator) + next = (Iterator)((Iterator)iter).next(); + else + assert false : "Iterable or Iterator are expected"; + + if (next.hasNext()) + return more = true; + } + + return more = false; + } + + /** {@inheritDoc} */ + @Override public T nextX() { + if (hasNext()) { + moved = true; + + return next.next(); + } + + throw new NoSuchElementException(); + } + + /** {@inheritDoc} */ + @Override public void removeX() { + assert next != null; + + next.remove(); + } + + /** {@inheritDoc} */ + @Override public String toString() { + return S.toString(FlatIterator.class, this); + } +}
http://git-wip-us.apache.org/repos/asf/ignite/blob/a3f845b0/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/GridAbsClosureNoOperation.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/GridAbsClosureNoOperation.java b/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/GridAbsClosureNoOperation.java deleted file mode 100644 index 196df80..0000000 --- a/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/GridAbsClosureNoOperation.java +++ /dev/null @@ -1,39 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package org.apache.ignite.internal.util.lang.gridfunc; - -import org.apache.ignite.internal.util.lang.GridAbsClosure; -import org.apache.ignite.internal.util.typedef.internal.S; - -/** - * Absolute closure that does nothing. - */ -public class GridAbsClosureNoOperation extends GridAbsClosure { - /** */ - private static final long serialVersionUID = 0L; - - /** {@inheritDoc} */ - @Override public void apply() { - // No-op. - } - - /** {@inheritDoc} */ - @Override public String toString() { - return S.toString(GridAbsClosureNoOperation.class, this); - } -} http://git-wip-us.apache.org/repos/asf/ignite/blob/a3f845b0/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/GridAbsClosurePrint.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/GridAbsClosurePrint.java b/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/GridAbsClosurePrint.java deleted file mode 100644 index 33070f5..0000000 --- a/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/GridAbsClosurePrint.java +++ /dev/null @@ -1,49 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package org.apache.ignite.internal.util.lang.gridfunc; - -import org.apache.ignite.internal.util.lang.GridAbsClosure; -import org.apache.ignite.internal.util.typedef.internal.S; - -/** - * Absolute closure that print message. - */ -public class GridAbsClosurePrint extends GridAbsClosure { - /** */ - private static final long serialVersionUID = 0L; - - /** */ - private String message; - - /** - * @param message Message to print. - */ - public GridAbsClosurePrint(String message) { - this.message = message; - } - - /** {@inheritDoc} */ - @Override public void apply() { - System.out.println(message); - } - - /** {@inheritDoc} */ - @Override public String toString() { - return S.toString(GridAbsClosurePrint.class, this); - } -} http://git-wip-us.apache.org/repos/asf/ignite/blob/a3f845b0/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/GridAbsClosureRunnableWrapper.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/GridAbsClosureRunnableWrapper.java b/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/GridAbsClosureRunnableWrapper.java deleted file mode 100644 index 6fa98f8..0000000 --- a/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/GridAbsClosureRunnableWrapper.java +++ /dev/null @@ -1,51 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package org.apache.ignite.internal.util.lang.gridfunc; - -import org.apache.ignite.internal.util.lang.GridAbsClosure; -import org.apache.ignite.internal.util.typedef.internal.S; - -/** - * Closure that wraps given runnable. - * Note that wrapping closure always returns {@code null}. - */ -public class GridAbsClosureRunnableWrapper extends GridAbsClosure { - /** */ - private static final long serialVersionUID = 0L; - - /** */ - private final Runnable r; - - /** - * @param r Runnable to convert to closure. If {@code null} - no-op closure is returned. - */ - public GridAbsClosureRunnableWrapper(Runnable r) { - this.r = r; - } - - /** {@inheritDoc} */ - @Override public void apply() { - if (r != null) - r.run(); - } - - /** {@inheritDoc} */ - @Override public String toString() { - return S.toString(GridAbsClosureRunnableWrapper.class, this); - } -} http://git-wip-us.apache.org/repos/asf/ignite/blob/a3f845b0/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/GridAbsClosureWrapper.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/GridAbsClosureWrapper.java b/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/GridAbsClosureWrapper.java deleted file mode 100644 index 9902e2b..0000000 --- a/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/GridAbsClosureWrapper.java +++ /dev/null @@ -1,57 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package org.apache.ignite.internal.util.lang.gridfunc; - -import org.apache.ignite.internal.util.lang.GridAbsClosure; -import org.apache.ignite.internal.util.typedef.internal.S; -import org.apache.ignite.lang.IgniteInClosure; - -/** - * Wraps given closure. - * - * @param <T> Input type. - */ -public class GridAbsClosureWrapper<T> extends GridAbsClosure { - /** */ - private static final long serialVersionUID = 0L; - - /** */ - private final IgniteInClosure<? super T> closure; - - /** */ - private final T closureArgument; - - /** - * @param closure Closure. - * @param closureArgument Closure argument. - */ - public GridAbsClosureWrapper(IgniteInClosure<? super T> closure, T closureArgument) { - this.closure = closure; - this.closureArgument = closureArgument; - } - - /** {@inheritDoc} */ - @Override public void apply() { - closure.apply(closureArgument); - } - - /** {@inheritDoc} */ - @Override public String toString() { - return S.toString(GridAbsClosureWrapper.class, this); - } -} http://git-wip-us.apache.org/repos/asf/ignite/blob/a3f845b0/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/GridIteratorAdapterClosurePredicatesWrapper.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/GridIteratorAdapterClosurePredicatesWrapper.java b/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/GridIteratorAdapterClosurePredicatesWrapper.java deleted file mode 100644 index eeb31b3..0000000 --- a/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/GridIteratorAdapterClosurePredicatesWrapper.java +++ /dev/null @@ -1,138 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package org.apache.ignite.internal.util.lang.gridfunc; - -import java.util.Iterator; -import java.util.NoSuchElementException; -import org.apache.ignite.internal.util.lang.GridFunc; -import org.apache.ignite.internal.util.lang.GridIteratorAdapter; -import org.apache.ignite.internal.util.typedef.internal.S; -import org.apache.ignite.lang.IgniteClosure; -import org.apache.ignite.lang.IgnitePredicate; -import org.jetbrains.annotations.Nullable; - -/** - * Iterator from given iterator and optional filtering predicate. - */ -public class GridIteratorAdapterClosurePredicatesWrapper<T2, T1> extends GridIteratorAdapter<T2> { - /** */ - private static final long serialVersionUID = 0L; - - /** */ - private final IgniteClosure<? super T1, T2> transformer; - - /** */ - private final boolean readOnly; - - /** */ - private final IgnitePredicate<? super T1>[] predicates; - - /** */ - private T1 elem; - - /** */ - private boolean more; - - /** */ - private boolean moved; - - /** */ - private Iterator<? extends T1> iterator; - - /** - * @param iterator Input iterator. - * @param transformer Transforming closure to convert from T1 to T2. - * @param readOnly If {@code true}, then resulting iterator will not allow modifications to the underlying - * collection. - * @param predicates Optional filtering predicates. - */ - public GridIteratorAdapterClosurePredicatesWrapper(Iterator<? extends T1> iterator, IgniteClosure<? super T1, T2> transformer, - boolean readOnly, - IgnitePredicate<? super T1>... predicates) { - this.transformer = transformer; - this.readOnly = readOnly; - this.predicates = predicates; - this.iterator = iterator; - this.moved = true; - } - - /** {@inheritDoc} */ - @Override public boolean hasNextX() { - if (GridFunc.isEmpty(predicates)) - return iterator.hasNext(); - else { - if (!moved) - return more; - else { - more = false; - - while (iterator.hasNext()) { - elem = iterator.next(); - - boolean isAll = true; - - for (IgnitePredicate<? super T1> r : predicates) - if (r != null && !r.apply(elem)) { - isAll = false; - - break; - } - - if (isAll) { - more = true; - moved = false; - - return true; - } - } - - elem = null; // Give to GC. - - return false; - } - } - } - - /** {@inheritDoc} */ - @Nullable @Override public T2 nextX() { - if (GridFunc.isEmpty(predicates)) - return transformer.apply(iterator.next()); - else { - if (hasNext()) { - moved = true; - - return transformer.apply(elem); - } - else - throw new NoSuchElementException(); - } - } - - /** {@inheritDoc} */ - @Override public void removeX() { - if (readOnly) - throw new UnsupportedOperationException("Cannot modify read-only iterator."); - - iterator.remove(); - } - - /** {@inheritDoc} */ - @Override public String toString() { - return S.toString(GridIteratorAdapterClosurePredicatesWrapper.class, this); - } -} http://git-wip-us.apache.org/repos/asf/ignite/blob/a3f845b0/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/GridIteratorAdapterWrapper.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/GridIteratorAdapterWrapper.java b/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/GridIteratorAdapterWrapper.java deleted file mode 100644 index 22e2033..0000000 --- a/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/GridIteratorAdapterWrapper.java +++ /dev/null @@ -1,100 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package org.apache.ignite.internal.util.lang.gridfunc; - -import java.util.Iterator; -import java.util.NoSuchElementException; -import org.apache.ignite.internal.util.lang.GridIteratorAdapter; -import org.apache.ignite.internal.util.typedef.internal.S; - -/** - * Iterator over the elements of given iterators. - * - * @param <T> Type of the inner iterators. - */ -public class GridIteratorAdapterWrapper<T> extends GridIteratorAdapter<T> { - /** */ - private static final long serialVersionUID = 0L; - - /** */ - private final Iterable<Iterator<T>> iterable; - - /** */ - private Iterator<? extends Iterator<T>> iterator; - - /** */ - private Iterator<T> next; - - /** */ - private boolean moved; - - /** */ - private boolean more; - - /** - * @param iterable Input iterable of iterators. - */ - public GridIteratorAdapterWrapper(Iterable<Iterator<T>> iterable) { - this.iterable = iterable; - iterator = iterable.iterator(); - moved = true; - } - - /** {@inheritDoc} */ - @Override public boolean hasNextX() { - if (!moved) - return more; - - moved = false; - - if (next != null && next.hasNext()) - return more = true; - - while (iterator.hasNext()) { - next = iterator.next(); - - if (next.hasNext()) - return more = true; - } - - return more = false; - } - - /** {@inheritDoc} */ - @Override public T nextX() { - if (hasNext()) { - moved = true; - - return next.next(); - } - - throw new NoSuchElementException(); - } - - /** {@inheritDoc} */ - @Override public void removeX() { - assert next != null; - - next.remove(); - } - - /** {@inheritDoc} */ - @Override public String toString() { - return S.toString(GridIteratorAdapterWrapper.class, this); - } -} http://git-wip-us.apache.org/repos/asf/ignite/blob/a3f845b0/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/GridIteratorOverInnerCollectionsAdapter.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/GridIteratorOverInnerCollectionsAdapter.java b/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/GridIteratorOverInnerCollectionsAdapter.java deleted file mode 100644 index c309232..0000000 --- a/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/GridIteratorOverInnerCollectionsAdapter.java +++ /dev/null @@ -1,100 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package org.apache.ignite.internal.util.lang.gridfunc; - -import java.util.Iterator; -import java.util.NoSuchElementException; -import org.apache.ignite.internal.util.lang.GridIteratorAdapter; -import org.apache.ignite.internal.util.typedef.internal.S; - -/** - * Wrapper wich iterable over the elements of the inner collections. - * - * @param <T> Type of the inner collections. - */ -public class GridIteratorOverInnerCollectionsAdapter<T> extends GridIteratorAdapter<T> { - /** */ - private static final long serialVersionUID = 0L; - - /** */ - private final Iterable<? extends Iterable<T>> iterable; - - /** */ - private Iterator<? extends Iterable<T>> iterator; - - /** */ - private Iterator<T> next; - - /** */ - private boolean moved; - - /** */ - private boolean more; - - /** - * @param iterable Input collection of collections. - */ - public GridIteratorOverInnerCollectionsAdapter(Iterable<? extends Iterable<T>> iterable) { - this.iterable = iterable; - iterator = iterable.iterator(); - moved = true; - } - - /** {@inheritDoc} */ - @Override public boolean hasNextX() { - if (!moved) - return more; - - moved = false; - - if (next != null && next.hasNext()) - return more = true; - - while (iterator.hasNext()) { - next = iterator.next().iterator(); - - if (next.hasNext()) - return more = true; - } - - return more = false; - } - - /** {@inheritDoc} */ - @Override public T nextX() { - if (hasNext()) { - moved = true; - - return next.next(); - } - - throw new NoSuchElementException(); - } - - /** {@inheritDoc} */ - @Override public void removeX() { - assert next != null; - - next.remove(); - } - - /** {@inheritDoc} */ - @Override public String toString() { - return S.toString(GridIteratorOverInnerCollectionsAdapter.class, this); - } -} http://git-wip-us.apache.org/repos/asf/ignite/blob/a3f845b0/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/GridSerializableCollectionPredicateWrapper.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/GridSerializableCollectionPredicateWrapper.java b/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/GridSerializableCollectionPredicateWrapper.java deleted file mode 100644 index 771da37..0000000 --- a/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/GridSerializableCollectionPredicateWrapper.java +++ /dev/null @@ -1,78 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package org.apache.ignite.internal.util.lang.gridfunc; - -import java.util.Collection; -import java.util.Iterator; -import org.apache.ignite.internal.util.GridSerializableCollection; -import org.apache.ignite.internal.util.lang.GridFunc; -import org.apache.ignite.internal.util.typedef.F; -import org.apache.ignite.internal.util.typedef.internal.S; -import org.apache.ignite.lang.IgnitePredicate; -import org.jetbrains.annotations.NotNull; - -/** - * Light-weight view on given collection with provided predicate. - * - * @param <T> Type of the collection. - */ -public class GridSerializableCollectionPredicateWrapper<T> extends GridSerializableCollection<T> { - /** */ - private static final long serialVersionUID = 0L; - - /** */ - private final Collection<T> collection; - - /** */ - private final IgnitePredicate<? super T>[] predicates; - - /** - * @param collection Input collection that serves as a base for the view. - * @param predicates Optional predicates. If predicates are not provided - all elements will be in the view. - */ - public GridSerializableCollectionPredicateWrapper(Collection<T> collection, IgnitePredicate<? super T>... predicates) { - this.collection = collection; - this.predicates = predicates; - } - - /** {@inheritDoc} */ - @Override public boolean add(T e) { - // Pass through (will fail for readonly). - return GridFunc.isAll(e, predicates) && collection.add(e); - } - - /** {@inheritDoc} */ - @NotNull @Override public Iterator<T> iterator() { - return F.iterator0(collection, false, predicates); - } - - /** {@inheritDoc} */ - @Override public int size() { - return F.size(collection, predicates); - } - - /** {@inheritDoc} */ - @Override public boolean isEmpty() { - return F.isEmpty(predicates) ? collection.isEmpty() : !iterator().hasNext(); - } - - /** {@inheritDoc} */ - @Override public String toString() { - return S.toString(GridSerializableCollectionPredicateWrapper.class, this); - } -} http://git-wip-us.apache.org/repos/asf/ignite/blob/a3f845b0/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/GridSerializableCollectionWrapper.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/GridSerializableCollectionWrapper.java b/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/GridSerializableCollectionWrapper.java deleted file mode 100644 index cbabe9b..0000000 --- a/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/GridSerializableCollectionWrapper.java +++ /dev/null @@ -1,66 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package org.apache.ignite.internal.util.lang.gridfunc; - -import java.util.Collection; -import java.util.Iterator; -import org.apache.ignite.internal.util.GridSerializableCollection; -import org.apache.ignite.internal.util.lang.GridFunc; -import org.apache.ignite.internal.util.typedef.F; -import org.apache.ignite.internal.util.typedef.internal.S; -import org.jetbrains.annotations.NotNull; - -/** - * Wrapper which iterable over the elements of the inner collections. - * - * @param <T> Type of the inner collections. - */ -public class GridSerializableCollectionWrapper<T> extends GridSerializableCollection<T> { - /** */ - private static final long serialVersionUID = 0L; - - /** */ - private final Collection<? extends Collection<T>> collections; - - /** - * @param collections Input collection of collections. - */ - public GridSerializableCollectionWrapper(Collection<? extends Collection<T>> collections) { - this.collections = collections; - } - - /** {@inheritDoc} */ - @NotNull @Override public Iterator<T> iterator() { - return GridFunc.flat((Iterable<? extends Iterable<T>>)collections); - } - - /** {@inheritDoc} */ - @Override public int size() { - return F.size(iterator()); - } - - /** {@inheritDoc} */ - @Override public boolean isEmpty() { - return !iterator().hasNext(); - } - - /** {@inheritDoc} */ - @Override public String toString() { - return S.toString(GridSerializableCollectionWrapper.class, this); - } -} http://git-wip-us.apache.org/repos/asf/ignite/blob/a3f845b0/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/GridSerializableListReadOnlyWithTransformation.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/GridSerializableListReadOnlyWithTransformation.java b/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/GridSerializableListReadOnlyWithTransformation.java deleted file mode 100644 index a932e37..0000000 --- a/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/GridSerializableListReadOnlyWithTransformation.java +++ /dev/null @@ -1,78 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package org.apache.ignite.internal.util.lang.gridfunc; - -import java.util.Iterator; -import java.util.List; -import org.apache.ignite.internal.util.GridSerializableList; -import org.apache.ignite.internal.util.typedef.F; -import org.apache.ignite.internal.util.typedef.internal.S; -import org.apache.ignite.lang.IgniteClosure; -import org.jetbrains.annotations.NotNull; - -/** - * Light-weight view on given list with provided transformation. - * - * @param <T1> Element type after transformation. - * @param <T2> Element type. - */ -public class GridSerializableListReadOnlyWithTransformation<T1, T2> extends GridSerializableList<T1> { - /** */ - private static final long serialVersionUID = 3126625219739967068L; - - /** */ - private final IgniteClosure<? super T2, T1> closure; - - /** */ - private final List<? extends T2> list; - - /** - * @param closure closure Transformation closure. - * @param list Input list that serves as a base for the view. - */ - public GridSerializableListReadOnlyWithTransformation(IgniteClosure<? super T2, T1> closure, - List<? extends T2> list) { - this.closure = closure; - this.list = list; - } - - /** {@inheritDoc} */ - @Override public T1 get(int idx) { - return closure.apply(list.get(idx)); - } - - /** {@inheritDoc} */ - @NotNull @Override public Iterator<T1> iterator() { - return F.<T2, T1>iterator(list, closure, true); - } - - /** {@inheritDoc} */ - @Override public int size() { - return list.size(); - } - - /** {@inheritDoc} */ - @Override public boolean isEmpty() { - return list.isEmpty(); - } - - /** {@inheritDoc} */ - @Override public String toString() { - return S.toString(GridSerializableListReadOnlyWithTransformation.class, this); - } -} http://git-wip-us.apache.org/repos/asf/ignite/blob/a3f845b0/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/GridSerializableMapPredicatesTransformerWrapper.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/GridSerializableMapPredicatesTransformerWrapper.java b/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/GridSerializableMapPredicatesTransformerWrapper.java deleted file mode 100644 index 9803ba8..0000000 --- a/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/GridSerializableMapPredicatesTransformerWrapper.java +++ /dev/null @@ -1,168 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package org.apache.ignite.internal.util.lang.gridfunc; - -import java.util.Iterator; -import java.util.Map; -import java.util.Set; -import org.apache.ignite.internal.util.GridSerializableMap; -import org.apache.ignite.internal.util.GridSerializableSet; -import org.apache.ignite.internal.util.lang.GridFunc; -import org.apache.ignite.internal.util.typedef.F; -import org.apache.ignite.internal.util.typedef.internal.S; -import org.apache.ignite.lang.IgniteClosure; -import org.apache.ignite.lang.IgnitePredicate; -import org.jetbrains.annotations.NotNull; -import org.jetbrains.annotations.Nullable; - -/** - * Light-weight view on given map with provided predicate and transformer. - * - * @param <K> Type of the key. - * @param <V> Type of the input map value. - * @param <V1> Type of the output map value. - */ -public class GridSerializableMapPredicatesTransformerWrapper<K, V1, V> extends GridSerializableMap<K, V1> { - /** */ - private static final long serialVersionUID = 0L; - - /** */ - private final Map<K, V> map; - - /** */ - private final IgniteClosure<V, V1> transformer; - - /** */ - private final boolean hasPred; - - /** */ - private final IgnitePredicate<? super K>[] predicates; - - /** Entry predicate. */ - private IgnitePredicate<Entry<K, V>> ep; - - /** - * @param map Input map that serves as a base for the view. - * @param transformer Transformer for map value transformation. - * @param predicates Optional predicates. If predicates are not provided - all will be in the view. - */ - @SuppressWarnings({"unchecked"}) - public GridSerializableMapPredicatesTransformerWrapper(Map<K, V> map, IgniteClosure<V, V1> transformer, - IgnitePredicate<? super K>... predicates) { - this.map = map; - this.transformer = transformer; - this.hasPred = (predicates != null && predicates.length > 0); - this.predicates = predicates; - this.ep = new IgnitePredicateEvaluateEntryByKey(predicates); - } - - /** {@inheritDoc} */ - @NotNull @Override public Set<Entry<K, V1>> entrySet() { - return new GridSerializableSet<Entry<K, V1>>() { - @NotNull - @Override public Iterator<Entry<K, V1>> iterator() { - return new Iterator<Entry<K, V1>>() { - private Iterator<Entry<K, V>> it = GridFunc.iterator0(map.entrySet(), true, ep); - - @Override public boolean hasNext() { - return it.hasNext(); - } - - @Override public Entry<K, V1> next() { - final Entry<K, V> e = it.next(); - - return new Entry<K, V1>() { - @Override public K getKey() { - return e.getKey(); - } - - @Override public V1 getValue() { - return transformer.apply(e.getValue()); - } - - @Override public V1 setValue(V1 val) { - throw new UnsupportedOperationException("Put is not supported for readonly map view."); - } - }; - } - - @Override public void remove() { - throw new UnsupportedOperationException("Remove is not support for readonly map view."); - } - }; - } - - @Override public int size() { - return hasPred ? F.size(map.keySet(), predicates) : map.size(); - } - - @SuppressWarnings({"unchecked"}) - @Override public boolean remove(Object o) { - throw new UnsupportedOperationException("Remove is not support for readonly map view."); - } - - @SuppressWarnings({"unchecked"}) - @Override public boolean contains(Object o) { - return F.isAll((Entry<K, V>)o, ep) && map.entrySet().contains(o); - } - - @Override public boolean isEmpty() { - return hasPred ? !iterator().hasNext() : map.isEmpty(); - } - }; - } - - /** {@inheritDoc} */ - @Override public boolean isEmpty() { - return hasPred ? entrySet().isEmpty() : map.isEmpty(); - } - - /** {@inheritDoc} */ - @SuppressWarnings({"unchecked"}) - @Nullable @Override public V1 get(Object key) { - if (GridFunc.isAll((K)key, predicates)) { - V v = map.get(key); - - if (v != null) - return transformer.apply(v); - } - - return null; - } - - /** {@inheritDoc} */ - @Nullable @Override public V1 put(K key, V1 val) { - throw new UnsupportedOperationException("Put is not supported for readonly map view."); - } - - /** {@inheritDoc} */ - @Override public V1 remove(Object key) { - throw new UnsupportedOperationException("Remove is not supported for readonly map view."); - } - - /** {@inheritDoc} */ - @SuppressWarnings({"unchecked"}) - @Override public boolean containsKey(Object key) { - return GridFunc.isAll((K)key, predicates) && map.containsKey(key); - } - - /** {@inheritDoc} */ - @Override public String toString() { - return S.toString(GridSerializableMapPredicatesTransformerWrapper.class, this); - } -} http://git-wip-us.apache.org/repos/asf/ignite/blob/a3f845b0/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/GridSerializableMapPredicatesWrapper.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/GridSerializableMapPredicatesWrapper.java b/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/GridSerializableMapPredicatesWrapper.java deleted file mode 100644 index 3528ae8..0000000 --- a/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/GridSerializableMapPredicatesWrapper.java +++ /dev/null @@ -1,121 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package org.apache.ignite.internal.util.lang.gridfunc; - -import java.util.Iterator; -import java.util.Map; -import java.util.Set; -import org.apache.ignite.internal.util.GridSerializableMap; -import org.apache.ignite.internal.util.GridSerializableSet; -import org.apache.ignite.internal.util.lang.GridFunc; -import org.apache.ignite.internal.util.typedef.F; -import org.apache.ignite.internal.util.typedef.internal.S; -import org.apache.ignite.lang.IgnitePredicate; -import org.jetbrains.annotations.NotNull; -import org.jetbrains.annotations.Nullable; - -/** - * Light-weight view on given map with provided predicate. - * - * @param <K> Type of the key. - * @param <V> Type of the value. - */ -public class GridSerializableMapPredicatesWrapper<K, V> extends GridSerializableMap<K, V> { - /** */ - private static final long serialVersionUID = 5531745605372387948L; - - /** */ - private final Map<K, V> map; - - /** */ - private final IgnitePredicate<? super K>[] predicates; - - /** Entry predicate. */ - private IgnitePredicate<Entry<K, V>> entryPredicate; - - /** - * @param map Input map that serves as a base for the view. - * @param predicates Optional predicates. If predicates are not provided - all will be in the view. - */ - @SuppressWarnings({"unchecked"}) - public GridSerializableMapPredicatesWrapper(Map<K, V> map, IgnitePredicate<? super K>... predicates) { - this.map = map; - this.predicates = predicates; - this.entryPredicate = new IgnitePredicateEvaluateEntryByKey(predicates); - } - - /** {@inheritDoc} */ - @NotNull @Override public Set<Entry<K, V>> entrySet() { - return new GridSerializableSet<Entry<K, V>>() { - @NotNull - @Override public Iterator<Entry<K, V>> iterator() { - return GridFunc.iterator0(map.entrySet(), false, entryPredicate); - } - - @Override public int size() { - return F.size(map.keySet(), predicates); - } - - @SuppressWarnings({"unchecked"}) - @Override public boolean remove(Object o) { - return F.isAll((Entry<K, V>)o, entryPredicate) && map.entrySet().remove(o); - } - - @SuppressWarnings({"unchecked"}) - @Override public boolean contains(Object o) { - return F.isAll((Entry<K, V>)o, entryPredicate) && map.entrySet().contains(o); - } - - @Override public boolean isEmpty() { - return !iterator().hasNext(); - } - }; - } - - /** {@inheritDoc} */ - @Override public boolean isEmpty() { - return entrySet().isEmpty(); - } - - /** {@inheritDoc} */ - @SuppressWarnings({"unchecked"}) - @Nullable @Override public V get(Object key) { - return GridFunc.isAll((K)key, predicates) ? map.get(key) : null; - } - - /** {@inheritDoc} */ - @Nullable @Override public V put(K key, V val) { - V oldVal = get(key); - - if (GridFunc.isAll(key, predicates)) - map.put(key, val); - - return oldVal; - } - - /** {@inheritDoc} */ - @SuppressWarnings({"unchecked"}) - @Override public boolean containsKey(Object key) { - return GridFunc.isAll((K)key, predicates) && map.containsKey(key); - } - - /** {@inheritDoc} */ - @Override public String toString() { - return S.toString(GridSerializableMapPredicatesWrapper.class, this); - } -} http://git-wip-us.apache.org/repos/asf/ignite/blob/a3f845b0/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/GridSerializableMapReadOnlyClosurePredicateWrapper.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/GridSerializableMapReadOnlyClosurePredicateWrapper.java b/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/GridSerializableMapReadOnlyClosurePredicateWrapper.java deleted file mode 100644 index 2782b93..0000000 --- a/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/GridSerializableMapReadOnlyClosurePredicateWrapper.java +++ /dev/null @@ -1,165 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package org.apache.ignite.internal.util.lang.gridfunc; - -import java.util.Iterator; -import java.util.Map; -import java.util.Set; -import org.apache.ignite.internal.util.GridSerializableMap; -import org.apache.ignite.internal.util.GridSerializableSet; -import org.apache.ignite.internal.util.lang.GridFunc; -import org.apache.ignite.internal.util.typedef.F; -import org.apache.ignite.internal.util.typedef.internal.S; -import org.apache.ignite.lang.IgniteBiClosure; -import org.apache.ignite.lang.IgnitePredicate; -import org.jetbrains.annotations.NotNull; -import org.jetbrains.annotations.Nullable; - -/** - * Light-weight view on given map with provided predicate and transformer. - * - * @param <K> Type of the key. - * @param <V> Type of the input map value. - * @param <V1> Type of the output map value. - */ -public class GridSerializableMapReadOnlyClosurePredicateWrapper<K, V, V1> extends GridSerializableMap<K, V1> { - /** */ - private static final long serialVersionUID = 0L; - - /** */ - private final Map<K, V> map; - - /** */ - private final IgniteBiClosure<K, V, V1> transformer; - - /** */ - private final IgnitePredicate<? super K>[] predicates; - - /** Entry predicate. */ - private IgnitePredicate<Entry<K, V>> entryPredicate; - - /** - * @param map Input map that serves as a base for the view. - * @param transformer Transformer for map value transformation. - * @param predicates Optional predicates. If predicates are not provided - all will be in the view. - */ - @SuppressWarnings({"unchecked"}) - public GridSerializableMapReadOnlyClosurePredicateWrapper(Map<K, V> map, IgniteBiClosure<K, V, V1> transformer, - IgnitePredicate<? super K>... predicates) { - this.map = map; - this.transformer = transformer; - this.predicates = predicates; - entryPredicate = new IgnitePredicateEvaluateEntryByKey(predicates); - } - - /** {@inheritDoc} */ - @NotNull @Override public Set<Entry<K, V1>> entrySet() { - return new GridSerializableSet<Entry<K, V1>>() { - @NotNull - @Override public Iterator<Entry<K, V1>> iterator() { - return new Iterator<Entry<K, V1>>() { - private Iterator<Entry<K, V>> it = GridFunc.iterator0(map.entrySet(), true, entryPredicate); - - @Override public boolean hasNext() { - return it.hasNext(); - } - - @Override public Entry<K, V1> next() { - final Entry<K, V> e = it.next(); - - return new Entry<K, V1>() { - @Override public K getKey() { - return e.getKey(); - } - - @Override public V1 getValue() { - return transformer.apply(e.getKey(), e.getValue()); - } - - @Override public V1 setValue(V1 val) { - throw new UnsupportedOperationException( - "Put is not supported for readonly map view."); - } - }; - } - - @Override public void remove() { - throw new UnsupportedOperationException("Remove is not support for readonly map view."); - } - }; - } - - @Override public int size() { - return F.size(map.keySet(), predicates); - } - - @SuppressWarnings({"unchecked"}) - @Override public boolean remove(Object o) { - throw new UnsupportedOperationException("Remove is not support for readonly map view."); - } - - @SuppressWarnings({"unchecked"}) - @Override public boolean contains(Object o) { - return F.isAll((Entry<K, V>)o, entryPredicate) && map.entrySet().contains(o); - } - - @Override public boolean isEmpty() { - return !iterator().hasNext(); - } - }; - } - - /** {@inheritDoc} */ - @Override public boolean isEmpty() { - return entrySet().isEmpty(); - } - - /** {@inheritDoc} */ - @SuppressWarnings({"unchecked"}) - @Nullable @Override public V1 get(Object key) { - if (GridFunc.isAll((K)key, predicates)) { - V v = map.get(key); - - if (v != null) - return transformer.apply((K)key, v); - } - - return null; - } - - /** {@inheritDoc} */ - @Nullable @Override public V1 put(K key, V1 val) { - throw new UnsupportedOperationException("Put is not supported for readonly map view."); - } - - /** {@inheritDoc} */ - @Override public V1 remove(Object key) { - throw new UnsupportedOperationException("Remove is not supported for readonly map view."); - } - - /** {@inheritDoc} */ - @SuppressWarnings({"unchecked"}) - @Override public boolean containsKey(Object key) { - return GridFunc.isAll((K)key, predicates) && map.containsKey(key); - } - - /** {@inheritDoc} */ - @Override public String toString() { - return S.toString(GridSerializableMapReadOnlyClosurePredicateWrapper.class, this); - } -} http://git-wip-us.apache.org/repos/asf/ignite/blob/a3f845b0/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/GridSerializableMapReadOnlyPredicateWrapper.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/GridSerializableMapReadOnlyPredicateWrapper.java b/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/GridSerializableMapReadOnlyPredicateWrapper.java deleted file mode 100644 index 10c36ef..0000000 --- a/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/GridSerializableMapReadOnlyPredicateWrapper.java +++ /dev/null @@ -1,153 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package org.apache.ignite.internal.util.lang.gridfunc; - -import java.util.Iterator; -import java.util.Set; -import org.apache.ignite.internal.util.GridSerializableMap; -import org.apache.ignite.internal.util.GridSerializableSet; -import org.apache.ignite.internal.util.lang.GridFunc; -import org.apache.ignite.internal.util.typedef.F; -import org.apache.ignite.internal.util.typedef.internal.S; -import org.apache.ignite.lang.IgniteClosure; -import org.apache.ignite.lang.IgnitePredicate; -import org.jetbrains.annotations.NotNull; -import org.jetbrains.annotations.Nullable; - -/** - * Light-weight view on given map with provided predicates and mapping. - * - * @param <K> Key type. - * @param <V> Value type. - */ -public class GridSerializableMapReadOnlyPredicateWrapper<K, V> extends GridSerializableMap<K, V> { - /** */ - private static final long serialVersionUID = 0L; - - /** */ - private final Set<K> set; - - /** */ - private final IgniteClosure<? super K, V> mappingClosure; - - /** */ - private final IgnitePredicate<? super K>[] predicates; - - /** Entry predicate. */ - private IgnitePredicate<K> entryPredicate; - - /** - * @param set Input collection. - * @param mappingClosure Mapping closure, that maps key to value. - * @param predicates Optional predicates to filter input collection. If predicates are not provided - all elements - * will be in - */ - @SuppressWarnings({"unchecked"}) - public GridSerializableMapReadOnlyPredicateWrapper(Set<K> set, IgniteClosure<? super K, V> mappingClosure, - IgnitePredicate<? super K>... predicates) { - this.set = set; - this.mappingClosure = mappingClosure; - this.predicates = predicates; - this.entryPredicate = new IgnitePredicateIsAll(predicates); - } - - /** {@inheritDoc} */ - @NotNull @Override public Set<Entry<K, V>> entrySet() { - return new GridSerializableSet<Entry<K, V>>() { - @NotNull @Override public Iterator<Entry<K, V>> iterator() { - return new Iterator<Entry<K, V>>() { - - private Iterator<K> it = GridFunc.iterator0(set, true, entryPredicate); - - @Override public boolean hasNext() { - return it.hasNext(); - } - - @Override public Entry<K, V> next() { - final K e = it.next(); - - return new Entry<K, V>() { - @Override public K getKey() { - return e; - } - - @Override public V getValue() { - return mappingClosure.apply(e); - } - - @Override public V setValue(V val) { - throw new UnsupportedOperationException( - "Put is not supported for readonly collection view."); - } - }; - } - - @Override public void remove() { - throw new UnsupportedOperationException( - "Remove is not support for readonly collection view."); - } - }; - } - - @Override public int size() { - return F.size(set, predicates); - } - - @Override public boolean remove(Object o) { - throw new UnsupportedOperationException("Remove is not support for readonly collection view."); - } - - @Override public boolean isEmpty() { - return !iterator().hasNext(); - } - }; - } - - /** {@inheritDoc} */ - @Override public boolean isEmpty() { - return entrySet().isEmpty(); - } - - /** {@inheritDoc} */ - @Nullable @Override public V get(Object key) { - if (containsKey(key)) - return mappingClosure.apply((K)key); - - return null; - } - - /** {@inheritDoc} */ - @Nullable @Override public V put(K key, V val) { - throw new UnsupportedOperationException("Put is not supported for readonly collection view."); - } - - /** {@inheritDoc} */ - @Override public V remove(Object key) { - throw new UnsupportedOperationException("Remove is not supported for readonly collection view."); - } - - /** {@inheritDoc} */ - @Override public boolean containsKey(Object key) { - return GridFunc.isAll((K)key, predicates) && set.contains(key); - } - - /** {@inheritDoc} */ - @Override public String toString() { - return S.toString(GridSerializableMapReadOnlyPredicateWrapper.class, this); - } -} http://git-wip-us.apache.org/repos/asf/ignite/blob/a3f845b0/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/GridSerializableReadOnlyCollectionPredicateWrapper.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/GridSerializableReadOnlyCollectionPredicateWrapper.java b/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/GridSerializableReadOnlyCollectionPredicateWrapper.java deleted file mode 100644 index cce95a6..0000000 --- a/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/GridSerializableReadOnlyCollectionPredicateWrapper.java +++ /dev/null @@ -1,79 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package org.apache.ignite.internal.util.lang.gridfunc; - -import java.util.Collection; -import java.util.Iterator; -import org.apache.ignite.internal.util.GridSerializableCollection; -import org.apache.ignite.internal.util.typedef.F; -import org.apache.ignite.internal.util.typedef.internal.S; -import org.apache.ignite.lang.IgniteClosure; -import org.apache.ignite.lang.IgnitePredicate; -import org.jetbrains.annotations.NotNull; - -/** - * Light-weight view on given collection with provided predicate. - * - * @param <T1> Element type after transformation. - * @param <T2> Element type. - */ -public class GridSerializableReadOnlyCollectionPredicateWrapper<T1, T2> extends GridSerializableCollection<T1> { - /** */ - private static final long serialVersionUID = 0L; - - /** */ - private final Collection<? extends T2> collection; - - /** */ - private final IgniteClosure<? super T2, T1> transformer; - - /** */ - private final IgnitePredicate<? super T2>[] predicates; - - /** - * @param collection Input collection that serves as a base for the view. - * @param transformer Transformation closure. - * @param predicates Optional predicated. If predicates are not provided - all elements will be in the view. - */ - public GridSerializableReadOnlyCollectionPredicateWrapper(Collection<? extends T2> collection, - IgniteClosure<? super T2, T1> transformer, IgnitePredicate<? super T2>... predicates) { - this.collection = collection; - this.transformer = transformer; - this.predicates = predicates; - } - - /** {@inheritDoc} */ - @NotNull @Override public Iterator<T1> iterator() { - return F.<T2, T1>iterator(collection, transformer, true, predicates); - } - - /** {@inheritDoc} */ - @Override public int size() { - return F.isEmpty(predicates) ? collection.size() : F.size(iterator()); - } - - /** {@inheritDoc} */ - @Override public boolean isEmpty() { - return F.isEmpty(predicates) ? collection.isEmpty() : !iterator().hasNext(); - } - - /** {@inheritDoc} */ - @Override public String toString() { - return S.toString(GridSerializableReadOnlyCollectionPredicateWrapper.class, this); - } -} http://git-wip-us.apache.org/repos/asf/ignite/blob/a3f845b0/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/GridSerializableReadOnlyCollectionWrapper.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/GridSerializableReadOnlyCollectionWrapper.java b/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/GridSerializableReadOnlyCollectionWrapper.java deleted file mode 100644 index 3bec907..0000000 --- a/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/GridSerializableReadOnlyCollectionWrapper.java +++ /dev/null @@ -1,95 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package org.apache.ignite.internal.util.lang.gridfunc; - -import java.util.Collection; -import java.util.Iterator; -import org.apache.ignite.internal.util.GridSerializableCollection; -import org.apache.ignite.internal.util.GridSerializableIterator; -import org.apache.ignite.internal.util.lang.GridFunc; -import org.apache.ignite.internal.util.typedef.internal.S; -import org.jetbrains.annotations.NotNull; -import org.jetbrains.annotations.Nullable; - -/** - * Collection wrapper. - * A read-only view will be created over the element and given - * collections and no copying will happen. - * - * @param <T> Element type. - */ -public class GridSerializableReadOnlyCollectionWrapper<T> extends GridSerializableCollection<T> { - /** */ - private static final long serialVersionUID = 0L; - - /** Collection. */ - private final Collection<T> collection; - - /** First element in the collection. */ - private final T firstElement; - - /** - * @param collection Collection to wrap. - * @param firstElement First element. - */ - public GridSerializableReadOnlyCollectionWrapper(@NotNull Collection<T> collection, @NotNull T firstElement) { - this.collection = collection; - this.firstElement = firstElement; - } - - /** {@inheritDoc} */ - @NotNull - @Override public Iterator<T> iterator() { - return new GridSerializableIterator<T>() { - private Iterator<T> it; - - @Override public boolean hasNext() { - return it == null || it.hasNext(); - } - - @Nullable @Override public T next() { - if (it == null) { - it = collection.iterator(); - - return firstElement; - } - - return it.next(); - } - - @Override public void remove() { - throw new UnsupportedOperationException(); - } - }; - } - - /** {@inheritDoc} */ - @Override public int size() { - return collection.size() + 1; - } - - /** {@inheritDoc} */ - @Override public boolean equals(Object obj) { - return obj instanceof Collection && GridFunc.eqNotOrdered(this, (Collection)obj); - } - - /** {@inheritDoc} */ - @Override public String toString() { - return S.toString(GridSerializableReadOnlyCollectionWrapper.class, this); - } -} http://git-wip-us.apache.org/repos/asf/ignite/blob/a3f845b0/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/GridSerializableReadOnlyTwoCollectionsWrapper.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/GridSerializableReadOnlyTwoCollectionsWrapper.java b/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/GridSerializableReadOnlyTwoCollectionsWrapper.java deleted file mode 100644 index 5747d2c..0000000 --- a/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/GridSerializableReadOnlyTwoCollectionsWrapper.java +++ /dev/null @@ -1,100 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package org.apache.ignite.internal.util.lang.gridfunc; - -import java.util.Collection; -import java.util.Iterator; -import org.apache.ignite.internal.util.GridSerializableCollection; -import org.apache.ignite.internal.util.GridSerializableIterator; -import org.apache.ignite.internal.util.lang.GridFunc; -import org.apache.ignite.internal.util.typedef.internal.S; -import org.jetbrains.annotations.NotNull; - -/** - * Collections wrapper. - * A read-only view will be created over the element and given - * collections and no copying will happen. - * - * @param <T> Element type. - */ -public class GridSerializableReadOnlyTwoCollectionsWrapper<T> extends GridSerializableCollection<T> { - /** */ - private static final long serialVersionUID = 0L; - - /** First collection. */ - private final Collection<T> c1; - - /** SecondCollection. */ - private final Collection<T> c2; - - /** - * @param c1 First collection. - * @param c2 SecondCollection. - */ - public GridSerializableReadOnlyTwoCollectionsWrapper(Collection<T> c1, Collection<T> c2) { - this.c1 = c1; - this.c2 = c2; - } - - /** {@inheritDoc} */ - @NotNull - @Override public Iterator<T> iterator() { - return new GridSerializableIterator<T>() { - private Iterator<T> it1 = c1.iterator(); - private Iterator<T> it2 = c2.iterator(); - - @Override public boolean hasNext() { - if (it1 != null) - if (!it1.hasNext()) - it1 = null; - else - return true; - - return it2.hasNext(); - } - - @Override public T next() { - return it1 != null ? it1.next() : it2.next(); - } - - @Override public void remove() { - throw new UnsupportedOperationException(); - } - }; - } - - /** {@inheritDoc} */ - @Override public boolean contains(Object o) { - return c1.contains(o) || c2.contains(o); - } - - /** {@inheritDoc} */ - @Override public int size() { - return c1.size() + c2.size(); - } - - /** {@inheritDoc} */ - @Override public boolean equals(Object obj) { - return obj instanceof Collection && GridFunc.eqNotOrdered(this, (Collection<?>)obj); - } - - /** {@inheritDoc} */ - @Override public String toString() { - return S.toString(GridSerializableReadOnlyTwoCollectionsWrapper.class, this); - } -} http://git-wip-us.apache.org/repos/asf/ignite/blob/a3f845b0/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/HasEqualIdPredicate.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/HasEqualIdPredicate.java b/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/HasEqualIdPredicate.java new file mode 100644 index 0000000..9f5f927 --- /dev/null +++ b/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/HasEqualIdPredicate.java @@ -0,0 +1,51 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.ignite.internal.util.lang.gridfunc; + +import java.util.UUID; +import org.apache.ignite.cluster.ClusterNode; +import org.apache.ignite.internal.util.typedef.internal.S; +import org.apache.ignite.lang.IgnitePredicate; + +/** + * {@link ClusterNode} has equal id predicate. + */ +public class HasEqualIdPredicate<T extends ClusterNode> implements IgnitePredicate<T> { + /** */ + private static final long serialVersionUID = 0L; + + /** */ + private final UUID locNodeId; + + /** + * @param locNodeId Id for check. + */ + public HasEqualIdPredicate(UUID locNodeId) { + this.locNodeId = locNodeId; + } + + /** {@inheritDoc} */ + @Override public boolean apply(T n) { + return n.id().equals(locNodeId); + } + + /** {@inheritDoc} */ + @Override public String toString() { + return S.toString(HasEqualIdPredicate.class, this); + } +} http://git-wip-us.apache.org/repos/asf/ignite/blob/a3f845b0/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/HasNotEqualIdPredicate.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/HasNotEqualIdPredicate.java b/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/HasNotEqualIdPredicate.java new file mode 100644 index 0000000..e467749 --- /dev/null +++ b/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/HasNotEqualIdPredicate.java @@ -0,0 +1,51 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.ignite.internal.util.lang.gridfunc; + +import java.util.UUID; +import org.apache.ignite.cluster.ClusterNode; +import org.apache.ignite.internal.util.typedef.internal.S; +import org.apache.ignite.lang.IgnitePredicate; + +/** + * {@link ClusterNode} node has NOT equal id predicate. + */ +public class HasNotEqualIdPredicate<T extends ClusterNode> implements IgnitePredicate<T> { + /** */ + private static final long serialVersionUID = 0L; + + /** */ + private final UUID locNodeId; + + /** + * @param locNodeId Id for check. + */ + public HasNotEqualIdPredicate(UUID locNodeId) { + this.locNodeId = locNodeId; + } + + /** {@inheritDoc} */ + @Override public boolean apply(T n) { + return !n.id().equals(locNodeId); + } + + /** {@inheritDoc} */ + @Override public String toString() { + return S.toString(HasNotEqualIdPredicate.class, this); + } +} http://git-wip-us.apache.org/repos/asf/ignite/blob/a3f845b0/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/IdentityClosure.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/IdentityClosure.java b/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/IdentityClosure.java new file mode 100644 index 0000000..a053a3f --- /dev/null +++ b/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/IdentityClosure.java @@ -0,0 +1,39 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.ignite.internal.util.lang.gridfunc; + +import org.apache.ignite.internal.util.typedef.internal.S; +import org.apache.ignite.lang.IgniteClosure; + +/** + * Identity closure. + */ +public class IdentityClosure implements IgniteClosure { + /** */ + private static final long serialVersionUID = -6338573080046225172L; + + /** {@inheritDoc} */ + @Override public Object apply(Object o) { + return o; + } + + /** {@inheritDoc} */ + @Override public String toString() { + return S.toString(IdentityClosure.class, this); + } +} http://git-wip-us.apache.org/repos/asf/ignite/blob/a3f845b0/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/IgniteCallableArrayListFactory.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/IgniteCallableArrayListFactory.java b/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/IgniteCallableArrayListFactory.java deleted file mode 100644 index 017397d..0000000 --- a/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/IgniteCallableArrayListFactory.java +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package org.apache.ignite.internal.util.lang.gridfunc; - -import java.util.ArrayList; -import java.util.List; -import org.apache.ignite.internal.util.typedef.internal.S; -import org.apache.ignite.lang.IgniteCallable; - -/** - * Array list factory. - */ -public class IgniteCallableArrayListFactory implements IgniteCallable<List> { - /** */ - private static final long serialVersionUID = 0L; - - /** {@inheritDoc} */ - @Override public ArrayList call() { - return new ArrayList(); - } - - /** {@inheritDoc} */ - @Override public String toString() { - return S.toString(IgniteCallableArrayListFactory.class, this); - } -} http://git-wip-us.apache.org/repos/asf/ignite/blob/a3f845b0/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/IgniteCallableAtomicBooleanFactory.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/IgniteCallableAtomicBooleanFactory.java b/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/IgniteCallableAtomicBooleanFactory.java deleted file mode 100644 index a935471..0000000 --- a/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/IgniteCallableAtomicBooleanFactory.java +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package org.apache.ignite.internal.util.lang.gridfunc; - -import java.util.concurrent.atomic.AtomicBoolean; -import org.apache.ignite.internal.util.typedef.internal.S; -import org.apache.ignite.lang.IgniteCallable; - -/** - * Atomic boolean factory. - */ -public class IgniteCallableAtomicBooleanFactory implements IgniteCallable<AtomicBoolean> { - /** */ - private static final long serialVersionUID = 0L; - - /** {@inheritDoc} */ - @Override public AtomicBoolean call() { - return new AtomicBoolean(); - } - - /** {@inheritDoc} */ - @Override public String toString() { - return S.toString(IgniteCallableAtomicBooleanFactory.class, this); - } -} http://git-wip-us.apache.org/repos/asf/ignite/blob/a3f845b0/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/IgniteCallableAtomicIntegerFactory.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/IgniteCallableAtomicIntegerFactory.java b/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/IgniteCallableAtomicIntegerFactory.java deleted file mode 100644 index 9a8df06..0000000 --- a/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/IgniteCallableAtomicIntegerFactory.java +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package org.apache.ignite.internal.util.lang.gridfunc; - -import java.util.concurrent.atomic.AtomicInteger; -import org.apache.ignite.internal.util.typedef.internal.S; -import org.apache.ignite.lang.IgniteCallable; - -/** - * Atomic integer factory. - */ -public class IgniteCallableAtomicIntegerFactory implements IgniteCallable<AtomicInteger> { - /** */ - private static final long serialVersionUID = 0L; - - /** {@inheritDoc} */ - @Override public AtomicInteger call() { - return new AtomicInteger(0); - } - - /** {@inheritDoc} */ - @Override public String toString() { - return S.toString(IgniteCallableAtomicIntegerFactory.class, this); - } -} http://git-wip-us.apache.org/repos/asf/ignite/blob/a3f845b0/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/IgniteCallableAtomicLongFactory.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/IgniteCallableAtomicLongFactory.java b/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/IgniteCallableAtomicLongFactory.java deleted file mode 100644 index 7499c29..0000000 --- a/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/IgniteCallableAtomicLongFactory.java +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package org.apache.ignite.internal.util.lang.gridfunc; - -import java.util.concurrent.atomic.AtomicLong; -import org.apache.ignite.internal.util.typedef.internal.S; -import org.apache.ignite.lang.IgniteCallable; - -/** - * Atomic long factory. - */ -public class IgniteCallableAtomicLongFactory implements IgniteCallable<AtomicLong> { - /** */ - private static final long serialVersionUID = 0L; - - /** {@inheritDoc} */ - @Override public AtomicLong call() { - return new AtomicLong(0); - } - - /** {@inheritDoc} */ - @Override public String toString() { - return S.toString(IgniteCallableAtomicLongFactory.class, this); - } -} http://git-wip-us.apache.org/repos/asf/ignite/blob/a3f845b0/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/IgniteCallableAtomicReferenceFactory.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/IgniteCallableAtomicReferenceFactory.java b/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/IgniteCallableAtomicReferenceFactory.java deleted file mode 100644 index ed0ff58..0000000 --- a/modules/core/src/main/java/org/apache/ignite/internal/util/lang/gridfunc/IgniteCallableAtomicReferenceFactory.java +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package org.apache.ignite.internal.util.lang.gridfunc; - -import java.util.concurrent.atomic.AtomicReference; -import org.apache.ignite.internal.util.typedef.internal.S; -import org.apache.ignite.lang.IgniteCallable; - -/** - * Atomic reference factory. - */ -public class IgniteCallableAtomicReferenceFactory implements IgniteCallable<AtomicReference> { - /** */ - private static final long serialVersionUID = 0L; - - /** {@inheritDoc} */ - @Override public AtomicReference call() { - return new AtomicReference(); - } - - /** {@inheritDoc} */ - @Override public String toString() { - return S.toString(IgniteCallableAtomicReferenceFactory.class, this); - } -}
