3 * Copyright © 2014 František Kučera (frantovo.cz)
5 * This program is free software: you can redistribute it and/or modify
6 * it under the terms of the GNU General Public License as published by
7 * the Free Software Foundation, version 3 of the License.
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.
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/>.
17 package cz.frantovo.alt2xml.in.fs;
19 import java.nio.ByteBuffer;
20 import java.nio.charset.Charset;
22 public class ExtendedAttribute {
27 public ExtendedAttribute(String key, String value) {
32 public ExtendedAttribute(String key, ByteBuffer value) {
37 public ExtendedAttribute() {
40 public String getKey() {
44 public void setKey(String key) {
48 public String getValue() {
52 public final ByteBuffer getValueBytes() {
53 return encode(getValue());
56 public void setValue(String value) {
60 public final void setValue(ByteBuffer value) {
61 setValue(decode(value));
64 private static String decode(ByteBuffer bytes) {
66 return Charset.defaultCharset().decode(bytes).toString();
69 private static ByteBuffer encode(String text) {
73 return Charset.defaultCharset().encode(text);