12ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller/* GENERATED SOURCE. DO NOT MODIFY. */ 2f86f25d102340da66b9c7cb6b2d5ecdc0de43ecfFredrik Roubert// © 2016 and later: Unicode, Inc. and others. 3f86f25d102340da66b9c7cb6b2d5ecdc0de43ecfFredrik Roubert// License & terms of use: http://www.unicode.org/copyright.html#License 42ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller/* 52ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller ********************************************************************** 62ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller * Copyright (c) 2003-2010, International Business Machines 72ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller * Corporation and others. All Rights Reserved. 82ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller ********************************************************************** 92ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller * Author: Alan Liu 102ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller * Created: October 2 2003 112ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller * Since: ICU 2.8 122ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller ********************************************************************** 132ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller */ 142ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller 152ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fullerpackage android.icu.impl; 162ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fullerimport java.util.Date; 172ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller 182ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fullerimport android.icu.util.TimeZone; 192ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller 202ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller/** 211fba789ac68efdd9120a7373f49daef42833e674Neil Fuller * <code>TimeZoneAdapter</code> wraps a android.icu.util.TimeZone 222ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller * subclass and inherits from java.util.TimeZone. 232ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller * Without this class, we would need to 'port' java.util.Date to 241fba789ac68efdd9120a7373f49daef42833e674Neil Fuller * android.icu.util as well, so that Date could interoperate properly 251fba789ac68efdd9120a7373f49daef42833e674Neil Fuller * with the android.icu.util TimeZone and Calendar classes. With this 261fba789ac68efdd9120a7373f49daef42833e674Neil Fuller * class, we can use java.util.Date together with android.icu.util 272ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller * classes. 282ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller * 292ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller * @see android.icu.util.TimeZone#setDefault 302ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller * @author Alan Liu 31836e6b40a94ec3fb7545a76cb072960442b7eee9Neil Fuller * @hide Only a subset of ICU is exposed in Android 322ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller */ 332ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fullerpublic class TimeZoneAdapter extends java.util.TimeZone { 34f86f25d102340da66b9c7cb6b2d5ecdc0de43ecfFredrik Roubert 352ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller // Generated by serialver from JDK 1.4.1_01 362ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller static final long serialVersionUID = -2040072218820018557L; 37f86f25d102340da66b9c7cb6b2d5ecdc0de43ecfFredrik Roubert 382ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller /** 391fba789ac68efdd9120a7373f49daef42833e674Neil Fuller * The contained android.icu.util.TimeZone object. Must not be null. 402ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller * We delegate all methods to this object. 412ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller */ 422ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller private TimeZone zone; 43f86f25d102340da66b9c7cb6b2d5ecdc0de43ecfFredrik Roubert 442ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller /** 452ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller * Given a java.util.TimeZone, wrap it in the appropriate adapter 461fba789ac68efdd9120a7373f49daef42833e674Neil Fuller * subclass of android.icu.util.TimeZone and return the adapter. 472ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller */ 482ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller public static java.util.TimeZone wrap(android.icu.util.TimeZone tz) { 492ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller return new TimeZoneAdapter(tz); 502ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller } 512ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller 522ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller /** 532ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller * Return the java.util.TimeZone wrapped by this object. 542ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller */ 552ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller public android.icu.util.TimeZone unwrap() { 562ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller return zone; 572ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller } 582ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller 592ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller /** 601fba789ac68efdd9120a7373f49daef42833e674Neil Fuller * Constructs an adapter for a android.icu.util.TimeZone object. 612ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller */ 622ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller public TimeZoneAdapter(TimeZone zone) { 632ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller this.zone = zone; 642ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller super.setID(zone.getID()); 652ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller } 662ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller 672ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller /** 682ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller * TimeZone API; calls through to wrapped time zone. 692ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller */ 70f86f25d102340da66b9c7cb6b2d5ecdc0de43ecfFredrik Roubert @Override 712ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller public void setID(String ID) { 722ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller super.setID(ID); 732ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller zone.setID(ID); 74f86f25d102340da66b9c7cb6b2d5ecdc0de43ecfFredrik Roubert } 752ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller 762ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller /** 772ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller * TimeZone API; calls through to wrapped time zone. 782ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller */ 79f86f25d102340da66b9c7cb6b2d5ecdc0de43ecfFredrik Roubert @Override 802ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller public boolean hasSameRules(java.util.TimeZone other) { 812ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller return other instanceof TimeZoneAdapter && 822ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller zone.hasSameRules(((TimeZoneAdapter)other).zone); 832ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller } 842ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller 852ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller /** 862ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller * TimeZone API; calls through to wrapped time zone. 872ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller */ 88f86f25d102340da66b9c7cb6b2d5ecdc0de43ecfFredrik Roubert @Override 892ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller public int getOffset(int era, int year, int month, int day, int dayOfWeek, 902ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller int millis) { 912ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller return zone.getOffset(era, year, month, day, dayOfWeek, millis); 922ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller } 932ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller 942ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller /** 952ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller * TimeZone API; calls through to wrapped time zone. 962ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller */ 97f86f25d102340da66b9c7cb6b2d5ecdc0de43ecfFredrik Roubert @Override 982ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller public int getRawOffset() { 992ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller return zone.getRawOffset(); 1002ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller } 1012ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller 1022ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller /** 1032ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller * TimeZone API; calls through to wrapped time zone. 1042ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller */ 105f86f25d102340da66b9c7cb6b2d5ecdc0de43ecfFredrik Roubert @Override 1062ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller public void setRawOffset(int offsetMillis) { 1072ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller zone.setRawOffset(offsetMillis); 1082ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller } 1092ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller 1102ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller /** 1112ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller * TimeZone API; calls through to wrapped time zone. 1122ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller */ 113f86f25d102340da66b9c7cb6b2d5ecdc0de43ecfFredrik Roubert @Override 1142ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller public boolean useDaylightTime() { 1152ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller return zone.useDaylightTime(); 1162ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller } 1172ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller 1182ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller /** 1192ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller * TimeZone API; calls through to wrapped time zone. 1202ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller */ 121f86f25d102340da66b9c7cb6b2d5ecdc0de43ecfFredrik Roubert @Override 1222ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller public boolean inDaylightTime(Date date) { 1232ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller return zone.inDaylightTime(date); 1242ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller } 1252ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller 1262ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller /** 1272ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller * Boilerplate API; calls through to wrapped object. 1282ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller */ 129f86f25d102340da66b9c7cb6b2d5ecdc0de43ecfFredrik Roubert @Override 1302ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller public Object clone() { 1312ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller return new TimeZoneAdapter((TimeZone)zone.clone()); 1322ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller } 1332ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller 1342ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller /** 1352ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller * Boilerplate API; calls through to wrapped object. 1362ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller */ 137f86f25d102340da66b9c7cb6b2d5ecdc0de43ecfFredrik Roubert @Override 1382ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller public synchronized int hashCode() { 1392ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller return zone.hashCode(); 1402ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller } 1412ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller 1422ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller /** 1432ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller * Boilerplate API; calls through to wrapped object. 1442ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller */ 145f86f25d102340da66b9c7cb6b2d5ecdc0de43ecfFredrik Roubert @Override 1462ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller public boolean equals(Object obj) { 1472ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller if (obj instanceof TimeZoneAdapter) { 1482ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller obj = ((TimeZoneAdapter) obj).zone; 1492ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller } 1502ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller return zone.equals(obj); 1512ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller } 1522ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller 1532ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller /** 1542ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller * Returns a string representation of this object. 1552ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller * @return a string representation of this object. 1562ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller */ 157f86f25d102340da66b9c7cb6b2d5ecdc0de43ecfFredrik Roubert @Override 1582ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller public String toString() { 1592ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller return "TimeZoneAdapter: " + zone.toString(); 1602ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller } 1612ae130017183d2f66d55bf0ca51f8da3294644fdNeil Fuller} 162