1 package org.simantics.databoard.channel;
\r
3 import org.simantics.databoard.adapter.AdaptException;
\r
4 import org.simantics.databoard.binding.Binding;
\r
5 import org.simantics.databoard.binding.error.BindingException;
\r
6 import org.simantics.databoard.binding.mutable.Variant;
\r
9 * Service exception is a problem in processing the service request.
\r
10 * It is produces by Service Handler. Service Exception is not a communication
\r
13 * @author Toni Kalajainen <toni.kalajainen@iki.fi>
\r
15 public abstract class ServiceException extends Exception {
\r
17 private static final long serialVersionUID = 1L;
\r
21 public ServiceException(Variant error) {
\r
25 public ServiceException(Binding binding, Object value) {
\r
26 error = new Variant(binding, value);
\r
29 public Variant getError() {
\r
33 public Object getErrorType() {
\r
34 return error.type();
\r
37 public Object getError(Binding binding) throws BindingException {
\r
39 return error.getValue(binding);
\r
40 } catch (AdaptException e) {
\r
41 if (e.getCause()!=null && e.getCause() instanceof BindingException) throw (BindingException) e.getCause();
\r
42 throw new BindingException(e);
\r