X-Git-Url: https://gerrit.simantics.org/r/gitweb?a=blobdiff_plain;f=bundles%2Forg.simantics.db%2Fsrc%2Forg%2Fsimantics%2Fdb%2Ffunction%2FDbConsumer.java;h=4356710f7cc9b736dbc198f890d93f953650bb4c;hb=b2bb3ff110b5bf929b6d676f0122a15a43358440;hp=6e37bb527b7b8118c0b9438e36e26f556656fa88;hpb=969bd23cab98a79ca9101af33334000879fb60c5;p=simantics%2Fplatform.git diff --git a/bundles/org.simantics.db/src/org/simantics/db/function/DbConsumer.java b/bundles/org.simantics.db/src/org/simantics/db/function/DbConsumer.java index 6e37bb527..4356710f7 100644 --- a/bundles/org.simantics.db/src/org/simantics/db/function/DbConsumer.java +++ b/bundles/org.simantics.db/src/org/simantics/db/function/DbConsumer.java @@ -1,62 +1,62 @@ -/******************************************************************************* - * Copyright (c) 2016 Association for Decentralized Information Management - * in Industry THTH ry. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 - * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * Semantum Oy - initial API and implementation - *******************************************************************************/ -package org.simantics.db.function; - -import java.util.Objects; -import java.util.function.Consumer; - -import org.simantics.db.exception.DatabaseException; - -/** - * Represents a database operation that accepts a single input argument and - * returns no result and can throw database exceptions. Unlike most other - * functional interfaces, {@code DbConsumer} is expected to operate via - * side-effects. - * - *

- * This is a functional interface whose functional method is - * {@link #accept(Object)}. The only difference to {@link Consumer} is that this - * allows throwing DatabaseException. - * - * @param - * the type of the input to the operation - * - * @author Tuukka Lehtonen - * @since 1.22 - */ -@FunctionalInterface -public interface DbConsumer { - - /** - * Performs this operation on the given argument. - * - * @param t the input argument - */ - void accept(T t) throws DatabaseException; - - /** - * Returns a composed {@code Consumer} that performs, in sequence, this - * operation followed by the {@code after} operation. If performing either - * operation throws an exception, it is relayed to the caller of the - * composed operation. If performing this operation throws an exception, - * the {@code after} operation will not be performed. - * - * @param after the operation to perform after this operation - * @return a composed {@code Consumer} that performs in sequence this - * operation followed by the {@code after} operation - * @throws NullPointerException if {@code after} is null - */ - default DbConsumer andThen(DbConsumer after) { - Objects.requireNonNull(after); - return (T t) -> { accept(t); after.accept(t); }; - } -} +/******************************************************************************* + * Copyright (c) 2016 Association for Decentralized Information Management + * in Industry THTH ry. + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Semantum Oy - initial API and implementation + *******************************************************************************/ +package org.simantics.db.function; + +import java.util.Objects; +import java.util.function.Consumer; + +import org.simantics.db.exception.DatabaseException; + +/** + * Represents a database operation that accepts a single input argument and + * returns no result and can throw database exceptions. Unlike most other + * functional interfaces, {@code DbConsumer} is expected to operate via + * side-effects. + * + *

+ * This is a functional interface whose functional method is + * {@link #accept(Object)}. The only difference to {@link Consumer} is that this + * allows throwing DatabaseException. + * + * @param + * the type of the input to the operation + * + * @author Tuukka Lehtonen + * @since 1.22 + */ +@FunctionalInterface +public interface DbConsumer { + + /** + * Performs this operation on the given argument. + * + * @param t the input argument + */ + void accept(T t) throws DatabaseException; + + /** + * Returns a composed {@code Consumer} that performs, in sequence, this + * operation followed by the {@code after} operation. If performing either + * operation throws an exception, it is relayed to the caller of the + * composed operation. If performing this operation throws an exception, + * the {@code after} operation will not be performed. + * + * @param after the operation to perform after this operation + * @return a composed {@code Consumer} that performs in sequence this + * operation followed by the {@code after} operation + * @throws NullPointerException if {@code after} is null + */ + default DbConsumer andThen(DbConsumer after) { + Objects.requireNonNull(after); + return (T t) -> { accept(t); after.accept(t); }; + } +}