2 * Copyright (c) 2013 Cisco Systems, Inc. and others. All rights reserved.
4 * This program and the accompanying materials are made available under the
5 * terms of the Eclipse Public License v1.0 which accompanies this distribution,
6 * and is available at http://www.eclipse.org/legal/epl-v10.html
8 package org.opendaylight.controller.sal.common.util;
10 import java.io.Serializable;
11 import java.util.Collection;
13 import org.opendaylight.yangtools.concepts.Immutable;
14 import org.opendaylight.yangtools.yang.common.RpcError;
15 import org.opendaylight.yangtools.yang.common.RpcResult;
17 import com.google.common.collect.ImmutableList;
21 public static <T> RpcResult<T> getRpcResult(boolean successful) {
22 RpcResult<T> ret = new RpcResultTO<T>(successful, null, ImmutableList.<RpcError>of());
26 public static <T> RpcResult<T> getRpcResult(boolean successful, T result,
27 Collection<RpcError> errors) {
28 RpcResult<T> ret = new RpcResultTO<T>(successful, result, errors);
32 public static <T> RpcResult<T> getRpcResult(boolean successful, Collection<RpcError> errors) {
33 return new RpcResultTO<T>(successful, null, errors);
36 private static class RpcResultTO<T> implements RpcResult<T>, Serializable, Immutable {
38 private final Collection<RpcError> errors;
39 private final T result;
40 private final boolean successful;
42 public RpcResultTO(boolean successful, T result,
43 Collection<RpcError> errors) {
44 this.successful = successful;
46 this.errors = ImmutableList.copyOf(errors);
50 public boolean isSuccessful() {
55 public T getResult() {
60 public Collection<RpcError> getErrors() {