freemarkerdor/src/main/java/cz/xelfi/quoridor/freemarkerdor/UserInfo.java
author Jaroslav Tulach <jaroslav.tulach@apidesign.org>
Tue, 14 Sep 2010 08:56:13 +0200
changeset 264 d60370059c3c
parent 146 0b889d9e4ee1
permissions -rw-r--r--
Changing headers to GPLv3
     1 /*
     2  * Quoridor server and related libraries
     3  * Copyright (C) 2009-2010 Jaroslav Tulach <jaroslav.tulach@apidesign.org>
     4  *
     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, either version 3 of the License.
     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. Look for COPYING file in the top folder.
    16  * If not, see http://www.gnu.org/licenses/.
    17  */
    18 package cz.xelfi.quoridor.freemarkerdor;
    19 
    20 import java.util.List;
    21 import javax.xml.bind.annotation.XmlAccessType;
    22 import javax.xml.bind.annotation.XmlAccessorType;
    23 import javax.xml.bind.annotation.XmlAttribute;
    24 import javax.xml.bind.annotation.XmlElement;
    25 import javax.xml.bind.annotation.XmlRootElement;
    26 import javax.xml.bind.annotation.XmlValue;
    27 
    28 /**
    29  *
    30  * @author Jaroslav Tulach <jtulach@netbeans.org>
    31  */
    32 @XmlRootElement(name="user")
    33 @XmlAccessorType(XmlAccessType.NONE)
    34 public final class UserInfo extends Object {
    35     @XmlAttribute
    36     private String id;
    37     @XmlElement(name="property")
    38     private List<Property> properties;
    39 
    40     UserInfo() {
    41     }
    42 
    43     public UserInfo(String id) {
    44         this.id = id;
    45     }
    46 
    47     public String getProperty(String name) {
    48         if (properties == null) {
    49             return null;
    50         }
    51         for (Property p : properties) {
    52             if (p.name.equals(name)) {
    53                 return p.value;
    54             }
    55         }
    56         return null;
    57     }
    58 
    59     public String getId() {
    60         return id;
    61     }
    62 
    63     public static final class Property {
    64         @XmlAttribute
    65         private String name;
    66         @XmlValue
    67         private String value;
    68 
    69         private Property() {
    70         }
    71 
    72         Property(String name, String value) {
    73             this.name = name;
    74             this.value = value;
    75         }
    76     }
    77 }