001 package ezvcard.parameters; 002 003 /* 004 Copyright (c) 2012, Michael Angstadt 005 All rights reserved. 006 007 Redistribution and use in source and binary forms, with or without 008 modification, are permitted provided that the following conditions are met: 009 010 1. Redistributions of source code must retain the above copyright notice, this 011 list of conditions and the following disclaimer. 012 2. Redistributions in binary form must reproduce the above copyright notice, 013 this list of conditions and the following disclaimer in the documentation 014 and/or other materials provided with the distribution. 015 016 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND 017 ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 018 WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 019 DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR 020 ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES 021 (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 022 LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND 023 ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 024 (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS 025 SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 026 027 The views and conclusions contained in the software and documentation are those 028 of the authors and should not be interpreted as representing official policies, 029 either expressed or implied, of the FreeBSD Project. 030 */ 031 032 /** 033 * Represents a VALUE parameter. 034 * @author Michael Angstadt 035 */ 036 public class ValueParameter extends VCardParameter { 037 public static final String NAME = "VALUE"; 038 039 /** 040 * vCard versions: 2.1 (p.18-9) 041 */ 042 public static final ValueParameter URL = new ValueParameter("url"); 043 044 /** 045 * vCard versions: 2.1 (p.8-9) 046 */ 047 public static final ValueParameter CONTENT_ID = new ValueParameter("content-id"); 048 049 /** 050 * vCard versions: 3.0 051 */ 052 public static final ValueParameter BINARY = new ValueParameter("binary"); 053 054 /** 055 * vCard versions: 3.0, 4.0 056 */ 057 public static final ValueParameter URI = new ValueParameter("uri"); 058 059 /** 060 * vCard versions: 3.0, 4.0 061 */ 062 public static final ValueParameter TEXT = new ValueParameter("text"); 063 064 /** 065 * vCard versions: 3.0, 4.0 066 */ 067 public static final ValueParameter DATE = new ValueParameter("date"); 068 069 /** 070 * vCard versions: 3.0, 4.0 071 */ 072 public static final ValueParameter TIME = new ValueParameter("time"); 073 074 /** 075 * vCard versions: 3.0, 4.0 076 */ 077 public static final ValueParameter DATE_TIME = new ValueParameter("date-time"); 078 079 /** 080 * vCard versions: 4.0 081 */ 082 public static final ValueParameter DATE_AND_OR_TIME = new ValueParameter("date-and-or-time"); 083 084 /** 085 * vCard versions: 4.0 086 */ 087 public static final ValueParameter TIMESTAMP = new ValueParameter("timestamp"); 088 089 /** 090 * vCard versions: 4.0 091 */ 092 public static final ValueParameter BOOLEAN = new ValueParameter("boolean"); 093 094 /** 095 * vCard versions: 4.0 096 */ 097 public static final ValueParameter INTEGER = new ValueParameter("integer"); 098 099 /** 100 * vCard versions: 4.0 101 */ 102 public static final ValueParameter FLOAT = new ValueParameter("float"); 103 104 /** 105 * vCard versions: 4.0 106 */ 107 public static final ValueParameter UTC_OFFSET = new ValueParameter("utc-offset"); 108 109 /** 110 * vCard versions: 4.0 111 */ 112 public static final ValueParameter LANGUAGE_TAG = new ValueParameter("language-tag"); 113 114 /** 115 * Use of this constructor is discouraged and should only be used for 116 * defining non-standard VALUEs. Please use one of the predefined static 117 * objects. 118 * @param value the type value (e.g. "uri") 119 */ 120 public ValueParameter(String value) { 121 super(NAME, value); 122 } 123 124 /** 125 * Searches the static objects in this class for one that has a certain type 126 * value. 127 * @param value the type value to search for (e.g. "text") 128 * @return the object or null if not found 129 */ 130 public static ValueParameter valueOf(String value) { 131 return findByValue(value, ValueParameter.class); 132 } 133 }