View Javadoc
1   /*
2    * Copyright (C) 2020 sw4j.org
3    *
4    * This program is free software: you can redistribute it and/or modify
5    * it under the terms of the GNU General Public License as published by
6    * the Free Software Foundation, either version 3 of the License, or
7    * (at your option) any later version.
8    *
9    * This program is distributed in the hope that it will be useful,
10   * but WITHOUT ANY WARRANTY; without even the implied warranty of
11   * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12   * GNU General Public License for more details.
13   *
14   * You should have received a copy of the GNU General Public License
15   * along with this program.  If not, see <http://www.gnu.org/licenses/>.
16   */
17  package org.sw4j.tool.barcode.random.generator;
18  
19  import org.sw4j.tool.barcode.random.config.EncodingConfig;
20  
21  /**
22   * <p>
23   * This interface defined a single ident with the encoded representations.
24   * </p>
25   * @author Uwe Plonus &lt;u.plonus@gmail.com&gt;
26   */
27  public interface IdentValue {
28  
29      /**
30       * <p>
31       * Return the ident number.
32       * </p>
33       * @return the ident number.
34       */
35      String getIdent();
36  
37      /**
38       * <p>
39       * Return the raw value.
40       * </p>
41       * @return the raw value.
42       */
43      byte[] getValue();
44  
45      /**
46       * <p>
47       * Return the value in the given {@code encoding}.
48       * </p>
49       * @param encoding the encoding for which the encoded value should be returned.
50       * @return the encoded value or {@code null} if the encoding is unknown.
51       */
52      String getEncoded(final EncodingConfig encoding);
53  
54  }