001/**
002 * Copyright 2013 John Ericksen
003 *
004 * Licensed under the Apache License, Version 2.0 (the "License");
005 * you may not use this file except in compliance with the License.
006 * You may obtain a copy of the License at
007 *
008 *    http://www.apache.org/licenses/LICENSE-2.0
009 *
010 * Unless required by applicable law or agreed to in writing, software
011 * distributed under the License is distributed on an "AS IS" BASIS,
012 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
013 * See the License for the specific language governing permissions and
014 * limitations under the License.
015 */
016package org.androidtransfuse.model.manifest;
017
018import javax.xml.bind.annotation.XmlAttribute;
019import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
020
021
022/**
023 * attributes:
024 * android:reqFiveWayNav=["true" | "false"]
025 * android:reqHardKeyboard=["true" | "false"]
026 * android:reqKeyboardType=["undefined" | "nokeys" | "qwerty" |
027 * "twelvekey"]
028 * android:reqNavigation=["undefined" | "nonav" | "dpad" |
029 * "trackball" | "wheel"]
030 * android:reqTouchScreen=["undefined" | "notouch" | "stylus" |
031 * "finger"]
032 *
033 * @author John Ericksen
034 */
035public class UsesConfiguration extends ManifestBase {
036
037    private Boolean reqFiveWayNav;
038    private Boolean reqHardKeyboard;
039    private ReqKeyboardType reqKeyboardType;
040    private ReqNavigation reqNavigation;
041    private ReqTouchScreen reqTouchScreen;
042
043    @XmlAttribute(name = "reqFiveWayNav", namespace = ManifestNamespaceMapper.ANDROID_URI)
044    public Boolean getReqFiveWayNav() {
045        return reqFiveWayNav;
046    }
047
048    public void setReqFiveWayNav(Boolean reqFiveWayNav) {
049        this.reqFiveWayNav = reqFiveWayNav;
050    }
051
052    @XmlAttribute(name = "reqHardKeyboard", namespace = ManifestNamespaceMapper.ANDROID_URI)
053    public Boolean getReqHardKeyboard() {
054        return reqHardKeyboard;
055    }
056
057    public void setReqHardKeyboard(Boolean reqHardKeyboard) {
058        this.reqHardKeyboard = reqHardKeyboard;
059    }
060
061    @XmlAttribute(name = "reqKeyboardType", namespace = ManifestNamespaceMapper.ANDROID_URI)
062    @XmlJavaTypeAdapter(LabeledConverter.ReqKeyboardTypeConverter.class)
063    public ReqKeyboardType getReqKeyboardType() {
064        return reqKeyboardType;
065    }
066
067    public void setReqKeyboardType(ReqKeyboardType reqKeyboardType) {
068        this.reqKeyboardType = reqKeyboardType;
069    }
070
071    @XmlAttribute(name = "reqNavigation", namespace = ManifestNamespaceMapper.ANDROID_URI)
072    @XmlJavaTypeAdapter(LabeledConverter.ReqNavigationConverter.class)
073    public ReqNavigation getReqNavigation() {
074        return reqNavigation;
075    }
076
077    public void setReqNavigation(ReqNavigation reqNavigation) {
078        this.reqNavigation = reqNavigation;
079    }
080
081    @XmlAttribute(name = "reqTouchScreen", namespace = ManifestNamespaceMapper.ANDROID_URI)
082    @XmlJavaTypeAdapter(LabeledConverter.ReqTouchScreenConverter.class)
083    public ReqTouchScreen getReqTouchScreen() {
084        return reqTouchScreen;
085    }
086
087    public void setReqTouchScreen(ReqTouchScreen reqTouchScreen) {
088        this.reqTouchScreen = reqTouchScreen;
089    }
090}