--- /dev/null
+/*\r
+ * Copyright (c) 2013 Cisco Systems, Inc. and others. All rights reserved.\r
+ *\r
+ * This program and the accompanying materials are made available under the\r
+ * terms of the Eclipse Public License v1.0 which accompanies this distribution,\r
+ * and is available at http://www.eclipse.org/legal/epl-v10.html\r
+ */\r
+package org.opendaylight.controller.sal.common.util;\r
+\r
+import java.util.ArrayList;\r
+import java.util.Collection;\r
+import java.util.Collections;\r
+import org.opendaylight.controller.yang.common.RpcError;\r
+import org.opendaylight.controller.yang.common.RpcResult;\r
+\r
+public class Rpcs {\r
+ public static <T> RpcResult<T> getRpcResult(boolean successful, T result,\r
+ Collection<RpcError> errors) {\r
+ RpcResult<T> ret = new RpcResultTO<T>(successful, result, errors);\r
+ return ret;\r
+ }\r
+\r
+ private static class RpcResultTO<T> implements RpcResult<T> {\r
+\r
+ private final Collection<RpcError> errors;\r
+ private final T result;\r
+ private final boolean successful;\r
+\r
+ public RpcResultTO(boolean successful, T result,\r
+ Collection<RpcError> errors) {\r
+ this.successful = successful;\r
+ this.result = result;\r
+ this.errors = Collections.unmodifiableList(new ArrayList<RpcError>(\r
+ errors));\r
+ }\r
+\r
+ @Override\r
+ public boolean isSuccessful() {\r
+ return successful;\r
+ }\r
+\r
+ @Override\r
+ public T getResult() {\r
+ return result;\r
+ }\r
+\r
+ @Override\r
+ public Collection<RpcError> getErrors() {\r
+ return errors;\r
+ }\r
+\r
+ }\r
+}\r