001 package railo.commons.lang; 002 003 import java.io.UnsupportedEncodingException; 004 005 /** 006 * Name Value Pair 007 */ 008 public final class ByteNameValuePair { 009 010 private byte[] name; 011 private byte[] value; 012 private boolean urlEncoded; 013 014 /** 015 * constructor of the class 016 * @param name 017 * @param value 018 */ 019 public ByteNameValuePair(byte[] name, byte[] value,boolean urlEncoded) { 020 this.name = name; 021 this.value = value; 022 this.urlEncoded = urlEncoded; 023 } 024 025 /** 026 * @return Returns the name. 027 */ 028 public byte[] getName() { 029 return name; 030 } 031 032 /** 033 * @param encoding 034 * @return Returns the name. 035 * @throws UnsupportedEncodingException 036 */ 037 public String getName(String encoding) throws UnsupportedEncodingException { 038 return new String(name,encoding); 039 } 040 041 /** 042 * @param encoding 043 * @param defaultValue 044 * @return Returns the name. 045 */ 046 public String getName(String encoding, String defaultValue) { 047 try { 048 return new String(name,encoding); 049 } catch (UnsupportedEncodingException e) { 050 return defaultValue; 051 } 052 } 053 054 /** 055 * @param name The name to set. 056 */ 057 public void setName(byte[] name) { 058 this.name = name; 059 } 060 /** 061 * @return Returns the value. 062 */ 063 public byte[] getValue() { 064 return value; 065 } 066 067 /** 068 * @param encoding 069 * @return Returns the name. 070 * @throws UnsupportedEncodingException 071 */ 072 public String getValue(String encoding) throws UnsupportedEncodingException { 073 return new String(value,encoding); 074 } 075 076 /** 077 * @param encoding 078 * @param defaultValue 079 * @return Returns the name. 080 */ 081 public String getValue(String encoding, String defaultValue) { 082 try { 083 return new String(value,encoding); 084 } catch (UnsupportedEncodingException e) { 085 return defaultValue; 086 } 087 } 088 089 /** 090 * @param value The value to set. 091 */ 092 public void setValue(byte[] value) { 093 this.value = value; 094 } 095 096 /** 097 * @return the urlEncoded 098 */ 099 public boolean isUrlEncoded() { 100 return urlEncoded; 101 } 102 103 }