java/rozsirene-atributy/src/cz/frantovo/rozsireneAtributy/Atribut.java
author František Kučera <franta-hg@frantovo.cz>
Wed Dec 15 23:29:14 2010 +0100 (2010-12-15)
changeset 10 ed2b6ebf138d
parent 9 a2e91b20198b
child 11 9b399cde6a3b
permissions -rw-r--r--
Vytváření a mazání atributů.
     1 package cz.frantovo.rozsireneAtributy;
     2 
     3 import java.nio.ByteBuffer;
     4 import java.nio.charset.Charset;
     5 
     6 public class Atribut {
     7 
     8 	private String klic;
     9 	private String hodnota;
    10 
    11 	public Atribut(String klic, String hodnota) {
    12 		this.klic = klic;
    13 		this.hodnota = hodnota;
    14 	}
    15 
    16 	public Atribut(String klic, ByteBuffer hodnota) {
    17 		this.klic = klic;
    18 		setHodnota(hodnota);
    19 	}
    20 
    21 	public Atribut() {
    22 	}
    23 
    24 	public String getKlic() {
    25 		return klic;
    26 	}
    27 
    28 	public void setKlic(String klic) {
    29 		this.klic = klic;
    30 	}
    31 
    32 	public String getHodnota() {
    33 		return hodnota;
    34 	}
    35 
    36 	public final ByteBuffer getHodnotaBajty() {
    37 		return zakóduj(getHodnota());
    38 	}
    39 
    40 	public void setHodnota(String hodnota) {
    41 		this.hodnota = hodnota;
    42 	}
    43 
    44 	public final void setHodnota(ByteBuffer hodnota) {
    45 		setHodnota(dekóduj(hodnota));
    46 	}
    47 
    48 	private static String dekóduj(ByteBuffer bajty) {
    49 		bajty.flip();
    50 		return Charset.defaultCharset().decode(bajty).toString();
    51 	}
    52 
    53 	private static ByteBuffer zakóduj(String text) {
    54 		if (text == null) {
    55 			return null;
    56 		} else {
    57 			return Charset.defaultCharset().encode(text);
    58 		}
    59 	}
    60 }