001package net.filebot.format; 002 003import static java.util.Arrays.*; 004 005public class BindingException extends RuntimeException { 006 007 private final Flag[] flags; 008 009 public BindingException(String message, Throwable cause, Flag... flags) { 010 super(message, cause); 011 this.flags = flags; 012 } 013 014 public BindingException(Object binding, Object message, Flag... flags) { 015 this(binding, message, null, flags); 016 } 017 018 public BindingException(Object binding, Object message, Throwable cause, Flag... flags) { 019 this("Binding \"" + binding + "\": " + message, cause, flags); 020 } 021 022 public boolean has(Flag flag) { 023 return stream(flags).anyMatch(f -> f == flag); 024 } 025 026 public static enum Flag { 027 UNDEFINED, SAMPLE_FILE_NOT_SET; 028 } 029 030}