All Projects → foal → gwt-time

foal / gwt-time

Licence: BSD-3-Clause License
Backport of functionality based on JSR-310 to GWT. This is NOT an implementation of JSR-310.

Programming Languages

java
68154 projects - #9 most used programming language

Projects that are alternatives of or similar to gwt-time

slack-timezone-bot
🤖⏰ Slack bot to show time in users' timezones
Stars: ✭ 51 (+200%)
Mutual labels:  timezone
mvp4g
A framework to build a gwt application the right way
Stars: ✭ 29 (+70.59%)
Mutual labels:  gwt
intl-format
A wrapper library for PHP to format and internationalize values in messages like sprintf
Stars: ✭ 12 (-29.41%)
Mutual labels:  timezone
timezones
Nim timezone library compatible with the standard library.
Stars: ✭ 37 (+117.65%)
Mutual labels:  timezone
geo-sql-database
Continents, Sub-Continents, Countries, States, Cities, Timezones, Currencies SQL database.
Stars: ✭ 30 (+76.47%)
Mutual labels:  timezone
gwt-material-table
A complex table component designed for the material design specifications
Stars: ✭ 28 (+64.71%)
Mutual labels:  gwt
Positional
An elegant and colorful location information app for Android with Compass, Clock, Level, Sun, Moon, Trail Marker and many other features.
Stars: ✭ 72 (+323.53%)
Mutual labels:  timezone
simple-location
Adds Basic Location Support to Wordpress
Stars: ✭ 26 (+52.94%)
Mutual labels:  timezone
google-photos-timezone-fix
Iterates over photos in given Google Photos album and edits date/time/timezone of each photo in order to fix their order
Stars: ✭ 22 (+29.41%)
Mutual labels:  timezone
rules gwt
Bazel rules for GWT
Stars: ✭ 20 (+17.65%)
Mutual labels:  gwt
elemento
Builder API and other goodies for Elemental2
Stars: ✭ 90 (+429.41%)
Mutual labels:  gwt
Shell-Scripts
Shell scripts about some basic topics, current time, calculator, sorting, restaurant and more.
Stars: ✭ 100 (+488.24%)
Mutual labels:  timezone
setup-timezone
setup timezone for actions
Stars: ✭ 20 (+17.65%)
Mutual labels:  timezone
gwt-boot-awesome-lili
Collection of JavaScript Libraries with JsInterop Interfaces and Others - GWT Awesome Library List (Gwit a LiLi)
Stars: ✭ 29 (+70.59%)
Mutual labels:  gwt
react4j
An opinionated react java binding
Stars: ✭ 33 (+94.12%)
Mutual labels:  gwt
node-red-contrib-moment
Node-Red Node that produces formatted Date/Time output using the Moment.JS library. Timezone, dst and locale aware.
Stars: ✭ 31 (+82.35%)
Mutual labels:  timezone
console
HAL management console
Stars: ✭ 41 (+141.18%)
Mutual labels:  gwt
nepali-datetime
Python's core datetime inspired nepali datetime (BS date & NPT) package 🇳🇵
Stars: ✭ 36 (+111.76%)
Mutual labels:  timezone
ng2-timezone-selector
A simple Angular module to create a timezone selector using moment-timezone.
Stars: ✭ 12 (-29.41%)
Mutual labels:  timezone
helloworld-web
Hello World web application in 39 different ways in Java
Stars: ✭ 18 (+5.88%)
Mutual labels:  gwt

Maven Central

GWT java.util.time emulation based on ThreeTen backport project

JSR-310 provides a new date and time library for Java SE 8. This project is the port to GWT.

For more information of the base project see the main home page of the project.

This project is NOT an implementation of JSR-310, as that would require jumping through lots of unnecessary hoops. Instead, this is a simple adaptation of "ThreeTen" backport intended to allow users to quickly use the JSR-310 API on GWT client side. This project should be referred to using the "gwt-time" name and the base backport should be referred to using the "ThreeTen" name.

Active development on JSR-310 is at OpenJDK:

That repository used the BSD 3-clause license as the base project.

Issues about the adaptation should be reported here at GitHub. Pull requests and issues will only be considered so far as matching the behavior of the real Java SE. Additional requested features will be rejected.

Time-zone data

Current version od TZDB: 2021a The time-zone database is stored as a pre-compiled dat file that is included in the built jar as a separate dependency. The actual time-zone data is located in the base project and updated manually. To load TZDB data add the following dependency:

<dependency>
	<groupId>org.jresearch.gwt.time</groupId>
	<artifactId>org.jresearch.gwt.time.tzdb</artifactId>
</dependency>

Set the actual vesion for GWT 2.8.2/2.9.0

Add <inherits name="org.jresearch.threetenbp.gwt.tzdb.module"/> to your module.gwt.xml, if you use gwt-maven-plugin form Thomas Broyer (https://github.com/tbroyer/gwt-maven-plugin) it will be done automatically.

Localization data

Current version of CLDR: 38.1 By default the project supports base Java locales (constant from java.util.Locale). To enable all actulal locales (http://cldr.unicode.org) add the following dependency:

<dependency>
	<groupId>org.jresearch.gwt.locale</groupId>
	<artifactId>org.jresearch.gwt.locale.cldr</artifactId>
	<version>1.0.2</version>
</dependency>

Check the actual version on project page: https://github.com/foal/gwt-locale-cldr

Add <inherits name="org.jresearch.gwt.locale.cldr.module"/> to your module.gwt.xml, if you use gwt-maven-plugin form Thomas Broyer (https://github.com/tbroyer/gwt-maven-plugin) it will be done automatically.

Time zone names

The impementation takes it from the browser with fallback to ZoneId from TZDB

Localized date/time parts (months, weekdays, eras, am/pm)

The impementation takes localized parts from the browser with falback to English.

Localized number formating (zero digit, positive sign, negative sign, decimal separator)

The impementation takes it from the browser with falback to 0, +, - and ..

Date/Time formating

The impementation contains all actual data from CLDR

Using

  • For GWT 2.8.2 add the following project dependency to pom.xml
<dependency>
    <groupId>org.jresearch.gwt.time</groupId>
    <artifactId>org.jresearch.gwt.time</artifactId>
    <version>1.4.18</version>
</dependency>
  • For GWT 2.9.0 add the following project dependency to pom.xml
<dependency>
    <groupId>org.jresearch.gwt.time</groupId>
    <artifactId>org.jresearch.gwt.time</artifactId>
    <version>2.0.6</version>
</dependency>

Different setups for projects using gwt time

For more information about possible commbinations see Different setups for projects using gwt time

Unimplemented or partial implemented features

  • Compatibility with J2CL
  • Updates from Java 9-14
  • Localization for IsoFields.QUARTER_OF_YEAR (hard code English quarter text)
  • Chronology prints as ID (take it from browser)
  • Implementation of JapaneseChronology/JapaneseEra/JapaneseDate in the original project based on java.util.Calendar and doesn't works right now.
  • new JapaneseEra.REIWA required Java 13 to build (current is Java 8)
  • java.util.Locale emulation may clash with original GWT implementation. See dicussion on Google Groups and similar issue with gwt-commons-lang3. Actual implementation are moved to separate project: https://github.com/foal/gwt-locale
  • Convert to/from java.util.Calendar, to/from java.util.TimeZone, to/from java.text.Format is out of scope of this project

FAQs

  1. What version of Java SE does this project map to? This project currently maps to the contents of release Java 1.8

  2. Will the backport be kept up to date? There are no plans for further releases. However if security issues or bugs are found, or pull requests received then a release may occur.

  3. Is this project derived from OpenJDK? No. This project is derived from the Reference Implementation previously hosted on GitHub. That project had a BSD license, which has been preserved here. Thus, this project is a fork of the fork of the original code before entry to OpenJDK.

Releases

Available in the Maven Central repository

Support

GitHub issues and pull requests should be used when you want to help advance the project.

Note that pull requests and issues will only be considered so far as matching the behavior of Java SE releases. Additional requested features will be rejected.

Pull requests must not be copied from the JDK, because the GPL license is incompatible with the BSD license used here.

Building from sources

  • check out APT project and INSTALL (mvn clean install) it.
  • check out this project
  • mvn clean install
  • The project use the parent pom located on Sonatype snapshot repository.
<repositories>
    <repository>
        <id>oss.sonatype.org-snapshot</id>
        <url>http://oss.sonatype.org/content/repositories/snapshots</url>
        <releases><enabled>false</enabled></releases>
        <snapshots><enabled>true</enabled></snapshots>
    </repository>
</repositories>

or download directly https://oss.sonatype.org/content/repositories/snapshots/org/jresearch/org.jresearch.pom/29-SNAPSHOT/

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].