本文整理汇总了Scala中org.joda.time.DateTimeZone类的典型用法代码示例。如果您正苦于以下问题:Scala DateTimeZone类的具体用法?Scala DateTimeZone怎么用?Scala DateTimeZone使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了DateTimeZone类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Scala代码示例。
示例1: GeoTagSpec
//设置package包名称以及导入依赖的类
package models.geotag
import java.util.UUID
import org.joda.time.{ DateTime, DateTimeZone }
import org.joda.time.format.DateTimeFormat
import org.specs2.mutable._
import org.specs2.runner._
import org.junit.runner._
import play.api.libs.json.Json
import play.api.test._
import play.api.test.Helpers._
import scala.io.Source
@RunWith(classOf[JUnitRunner])
class GeoTagSpec extends Specification {
private val DATE_TIME_PATTERN = DateTimeFormat.forPattern("yyyy-MM-dd'T'HH:mm:ssZ")
"The sample geotag" should {
"be properly created from JSON" in {
val json = Source.fromFile("test/resources/models/geotag/geotag.json").getLines().mkString("\n")
val result = Json.fromJson[GeoTag](Json.parse(json))
// Parsed without errors?
result.isSuccess must equalTo(true)
val geotag = result.get
geotag.annotationId must equalTo(UUID.fromString("5c25d207-11a5-49f0-b2a7-61a6ae63d96c"))
geotag.documentId must equalTo("qhljvnxnuuc9i0")
geotag.filepartId must equalTo(UUID.fromString("f903b736-cae8-4fe3-9bda-01583783548b"))
geotag.gazetteerUri must equalTo("http://pleiades.stoa.org/places/118543")
geotag.lastModifiedAt must equalTo(DateTime.parse("2016-09-19T13:09:00Z", DATE_TIME_PATTERN).withZone(DateTimeZone.UTC))
}
}
"JSON serialization/parsing roundtrip" should {
"yield an equal geotag" in {
val geotag = GeoTag(
UUID.randomUUID(),
"qhljvnxnuuc9i0",
UUID.fromString("841f9462-beb0-4967-ad48-64af323fc4c1"),
"http://pleiades.stoa.org/places/118543",
Seq.empty[String], // toponym
Seq.empty[String], // contributors
None, // lastModifiedBy
DateTime.parse("2016-02-23T18:24:00Z", DATE_TIME_PATTERN).withZone(DateTimeZone.UTC))
// Convert to JSON
val serialized = Json.prettyPrint(Json.toJson(geotag))
val parseResult = Json.fromJson[GeoTag](Json.parse(serialized))
parseResult.isSuccess must equalTo(true)
parseResult.get must equalTo(geotag)
}
}
}
示例2: RecordPaymentRequest
//设置package包名称以及导入依赖的类
package controllers.DTO
import models.Entry
import org.joda.time.{DateTime, DateTimeZone}
import scala.util.Try
case class RecordPaymentRequest(
coupleId: Long,
payerUserId: Long,
amount: Double,
submitterUserId: Long
) {
def toEntry: Try[Entry] = Try {
val subPer = if (submitterUserId == payerUserId) 0 else 100
Entry(
id = None,
coupleId = coupleId,
date = DateTime.now(DateTimeZone.UTC),
payerUserId = payerUserId,
amount = amount,
submitterUserId = submitterUserId,
submitterPercent = subPer
)
}
}
示例3: RecordPurchaseRequest
//设置package包名称以及导入依赖的类
package controllers.DTO
import models.Entry
import org.joda.time.{DateTime, DateTimeZone}
import scala.util.Try
case class RecordPurchaseRequest(
payerUserId: Long,
amount: Double,
submitterPercent: Long,
note: Option[String]
) {
def toEntry(coupleId: Long, submitterUserId: Long): Try[Entry] = Try {
Entry(
id = None,
coupleId = coupleId,
date = DateTime.now(DateTimeZone.UTC),
payerUserId = payerUserId,
amount = amount,
submitterUserId = submitterUserId,
submitterPercent = submitterPercent,
note = note
)
}
}
示例4: PlayGlobalSettings
//设置package包名称以及导入依赖的类
package utils
import java.util.TimeZone
import jdub.async.Database
import org.joda.time.DateTimeZone
import play.api.{ Application, GlobalSettings }
import services.database.Schema
object PlayGlobalSettings extends GlobalSettings {
override def onStart(app: Application) = {
DateTimeZone.setDefault(DateTimeZone.UTC)
TimeZone.setDefault(TimeZone.getTimeZone("UTC"))
val cnf = play.api.Play.current.configuration
val host = cnf.getString("db.host").getOrElse("localhost")
val port = 5432
val database = cnf.getString("db.database")
val username = cnf.getString("db.username").getOrElse("silhouette")
val password = cnf.getString("db.password")
Database.open(username, host, port, password, database)
Schema.update()
super.onStart(app)
}
override def onStop(app: Application) = {
Database.close()
super.onStop(app)
}
}
示例5: PelagiosRDFCrosswalk
//设置package包名称以及导入依赖的类
package models.place.crosswalks
import java.io.InputStream
import models.place._
import org.joda.time.{ DateTime, DateTimeZone }
import org.pelagios.Scalagios
import org.pelagios.api.PeriodOfTime
import java.io.File
import java.io.FileInputStream
object PelagiosRDFCrosswalk {
private def convertPeriodOfTime(period: PeriodOfTime): TemporalBounds = {
val startDate = period.start
val endDate = period.end.getOrElse(startDate)
TemporalBounds(
new DateTime(startDate).withZone(DateTimeZone.UTC),
new DateTime(endDate).withZone(DateTimeZone.UTC))
}
def fromRDF(filename: String): InputStream => Seq[GazetteerRecord] = {
val sourceGazetteer = Gazetteer(filename.substring(0, filename.indexOf('.')))
def convertPlace(place: org.pelagios.api.gazetteer.Place): GazetteerRecord =
GazetteerRecord(
GazetteerRecord.normalizeURI(place.uri),
sourceGazetteer,
DateTime.now().withZone(DateTimeZone.UTC),
None,
place.label,
place.descriptions.map(l => Description(l.chars, l.lang)),
place.names.map(l => Name(l.chars, l.lang)),
place.location.map(_.geometry),
place.location.map(_.pointLocation),
place.temporalCoverage.map(convertPeriodOfTime(_)),
place.category.map(category => Seq(category.toString)).getOrElse(Seq.empty[String]),
None, // country code
None, // population
place.closeMatches.map(GazetteerRecord.normalizeURI(_)),
place.exactMatches.map(GazetteerRecord.normalizeURI(_)))
// Return crosswalk function
{ stream: InputStream =>
Scalagios.readPlaces(stream, filename).map(convertPlace).toSeq }
}
def readFile(file: File): Seq[GazetteerRecord] =
fromRDF(file.getName)(new FileInputStream(file))
}
示例6: TemporalBounds
//设置package包名称以及导入依赖的类
package models.place
import org.joda.time.{ DateTime, DateTimeZone }
import org.joda.time.format.DateTimeFormat
import play.api.libs.json._
import play.api.libs.json.Reads._
import play.api.libs.functional.syntax._
case class TemporalBounds(from: DateTime, to: DateTime)
object TemporalBounds {
private val dateFormatter = DateTimeFormat.forPattern("yyyy-MM-dd").withZone(DateTimeZone.UTC)
implicit val dateFormat =
Format(
JsPath.read[JsString].map { json =>
dateFormatter.parseDateTime(json.value)
},
Writes[DateTime] { dt =>
Json.toJson(dateFormatter.print(dt))
}
)
private def flexDateWrite(dt: DateTime): JsValue =
if (dt.monthOfYear == 1 && dt.dayOfMonth == 1 && dt.minuteOfDay == 0)
Json.toJson(dt.year.get)
else
Json.toJson(dt)
implicit val temporalBoundsFormat: Format[TemporalBounds] = (
(JsPath \ "from").format[JsValue].inmap[DateTime](flexDateRead, flexDateWrite) and
(JsPath \ "to").format[JsValue].inmap[DateTime](flexDateRead, flexDateWrite)
)(TemporalBounds.apply, unlift(TemporalBounds.unapply))
def computeUnion(bounds: Seq[TemporalBounds]): TemporalBounds = {
val from = bounds.map(_.from.getMillis).min
val to = bounds.map(_.to.getMillis).max
TemporalBounds(
new DateTime(from, DateTimeZone.UTC),
new DateTime(to, DateTimeZone.UTC))
}
def fromYears(from: Int, to: Int): TemporalBounds = {
val f = new DateTime(DateTimeZone.UTC).withDate(from, 1, 1).withTime(0, 0, 0, 0)
val t = new DateTime(DateTimeZone.UTC).withDate(to, 1, 1).withTime(0, 0, 0, 0)
TemporalBounds(f, t)
}
}
示例7: MongoImplicits
//设置package包名称以及导入依赖的类
package json
import org.joda.time.{DateTimeZone, DateTime}
import play.api.libs.json._
import reactivemongo.bson.BSONObjectID
object MongoImplicits {
// Reads / Writes implicit for BSONObjectID
implicit val objectIdRead: Reads[BSONObjectID] =
(__ \ "$oid").read[String].map { oid =>
BSONObjectID(oid)
}
implicit val objectIdWrite: Writes[BSONObjectID] = new Writes[BSONObjectID] {
def writes(objectId: BSONObjectID): JsValue = Json.obj(
"$oid" -> objectId.stringify
)
}
// Read / write implicit for DateTime
implicit val dateTimeRead: Reads[DateTime] =
(__ \ "$date").read[Long].map { dateTime =>
new DateTime(dateTime, DateTimeZone.UTC)
}
implicit val dateTimeWrite: Writes[DateTime] = new Writes[DateTime] {
def writes(dateTime: DateTime): JsValue = Json.obj(
"$date" -> dateTime.getMillis
)
}
implicit val objectIdFormats = Format(objectIdRead, objectIdWrite)
implicit val dateTimeFormats = Format(dateTimeRead, dateTimeWrite)
}
示例8: Rfc3339Spec
//设置package包名称以及导入依赖的类
package com.pygmalios.reactiveinflux.command.query
import com.pygmalios.reactiveinflux.{PointTime, Rfc3339, StringValue}
import org.joda.time.{DateTime, DateTimeZone}
import org.junit.runner.RunWith
import org.scalatest.FlatSpec
import org.scalatest.junit.JUnitRunner
@RunWith(classOf[JUnitRunner])
class Rfc3339Spec extends FlatSpec {
behavior of "apply"
it should "parse ISO time 1970-01-01T00:00:00Z" in {
assert(Rfc3339(StringValue("1970-01-01T00:00:00Z")) ==
PointTime(new DateTime(1970, 1, 1, 0, 0, 0, 0, DateTimeZone.UTC)))
}
it should "parse ISO time 2015-01-29T21:55:43.702900257Z" in {
assert(Rfc3339(StringValue("2015-01-29T21:55:43.702900257Z")) ==
PointTime(new DateTime(2015, 1, 29, 21, 55, 43, 702, DateTimeZone.UTC)))
}
}
示例9: PointSpec
//设置package包名称以及导入依赖的类
package com.pygmalios.reactiveinflux.command.write
import com.pygmalios.reactiveinflux._
import org.joda.time.{DateTime, DateTimeZone, Duration}
object PointSpec {
val dateTime1 = new DateTime(1983, 1, 10, 11, 42, 7, 13, DateTimeZone.UTC)
val time1 = PointTime(dateTime1)
val point1 = Point(time1, "m1", Map.empty, Map("fk" -> LongFieldValue(-1)))
val time2 = time1.plus(Duration.millis(3))
val point2 = Point(time2, "m2", Map("tk1" -> "tv1", "tk2" -> "tv2"),
Map(
"fk" -> BooleanFieldValue(true),
"fk2" -> BigDecimalFieldValue(1),
"fk3" -> StringFieldValue("abcXYZ")
))
}
示例10: JsonSupport
//设置package包名称以及导入依赖的类
package se.meldrum.machine.http
import spray.json._
import akka.http.scaladsl.marshallers.sprayjson.SprayJsonSupport
import org.joda.time.format.ISODateTimeFormat
import org.joda.time.{DateTime, DateTimeZone}
import se.meldrum.machine.db.models.Task
object JsonSupport extends SprayJsonSupport with DefaultJsonProtocol {
// To make Joda DateTime available
// cred to suin
implicit object DateTimeJsonFormat extends RootJsonFormat[DateTime] {
private lazy val format = ISODateTimeFormat.dateTimeNoMillis()
def write(datetime: DateTime): JsValue = JsString(format.print(datetime.withZone(DateTimeZone.UTC)))
def read(json: JsValue): DateTime = json match {
case JsString(x) => format.parseDateTime(x)
case x => deserializationError("Expected DateTime as JsString, but got " + x)
}
}
implicit val taskFormat = jsonFormat5(Task)
implicit val userCreationFormat = jsonFormat3(UserCreation)
implicit val userNamesFormat = jsonFormat1(UserNames)
}
示例11:
//设置package包名称以及导入依赖的类
package common
import salat._
import salat.json._
import org.joda.time.format.ISODateTimeFormat
import org.joda.time.DateTimeZone
package object TypeHintContext {
implicit val ctx = new Context {
val name = "json-test-context"
override val typeHintStrategy = StringTypeHintStrategy(
when = TypeHintFrequency.Always,
typeHint = "_t")
override val jsonConfig = JSONConfig(
dateStrategy = StringDateStrategy(
dateFormatter = ISODateTimeFormat.dateTime.withZone(
DateTimeZone.UTC)))
}
}
示例12: DateHelper
//设置package包名称以及导入依赖的类
package utilities
import java.sql.{Timestamp,Date,Time}
import org.joda.time.{DateTime,LocalDate,LocalTime,DateTimeZone}
import org.joda.time.format._
object DateHelper {
def dateTimeToSqlTimestamp: DateTime => Timestamp = { dt => new Timestamp(dt.getMillis) }
def sqlTimestampToDateTime: Timestamp => DateTime = { ts => new DateTime(ts.getTime) }
def localDateToSqlDate: LocalDate => Date = { ld => new Date(ld.toDateTimeAtStartOfDay(DateTimeZone.UTC).getMillis) }
def sqlDateToLocalDate: Date => LocalDate = { d => new LocalDate(d.getTime) }
def localTimeToSqlTime: LocalTime => Time = { lt => new Time(lt.toDateTimeToday.getMillis) }
def sqlTimeToLocalTime: Time => LocalTime = { t => new LocalTime(t, DateTimeZone.UTC) }
def dateToString(date:java.util.Date, format:String = "yyyy-MM-dd HH:mm:ss"):String = {
import java.text._
val sdf = new SimpleDateFormat(format)
sdf.format(date)
}
def stringToDate(datestr:String, format:String = "yyyy-MM-dd HH:mm:ss"):java.util.Date = {
import java.text._
val sdf = new SimpleDateFormat(format)
sdf.parse(datestr)
}
}
示例13: DummyDeviceHistory
//设置package包名称以及导入依赖的类
package com.ubirch.avatar.test.tools.model
import java.util.UUID
import com.ubirch.avatar.model.rest.device.DeviceHistory
import com.ubirch.util.uuid.UUIDUtil
import org.joda.time.{DateTime, DateTimeZone}
import org.json4s.JsonAST.JValue
import org.json4s.native.JsonMethods._
import scala.collection.mutable.ListBuffer
object DummyDeviceHistory {
def data(deviceId: String = UUIDUtil.uuidStr,
messageId: UUID = UUIDUtil.uuid,
deviceType: String = "lightsLamp",
timestamp: DateTime = DateTime.now,
deviceTags: Set[String] = Set("ubirch#0", "actor"),
deviceMessage: JValue = parse("""{"foo": 23, "bar": 42}""")
): DeviceHistory = {
DeviceHistory(
messageId = messageId,
deviceDataRawId = UUIDUtil.uuid,
deviceId = deviceId,
deviceName = s"$deviceType $deviceId",
deviceType = deviceType,
deviceTags = deviceTags,
deviceMessage = deviceMessage,
timestamp = timestamp
)
}
def dataSeries(deviceId: String = UUIDUtil.uuidStr,
dType: String = "lightsLamp",
tags: Set[String] = Set("ubirch#0", "actor"),
message: JValue = parse("""{"foo": 23, "bar": 42}"""),
intervalMillis: Long = 1000 * 10, // 10s
timestampOffset: Long = -1000 * 60 * 60, // 1h
elementCount: Int = 5
): List[DeviceHistory] = {
val deviceDataList: ListBuffer[DeviceHistory] = ListBuffer()
val newestDateTime = DateTime.now(DateTimeZone.UTC).minus(timestampOffset)
val range = 0 until elementCount
for (i <- range) {
val timestamp = newestDateTime.minus(i * intervalMillis)
val deviceData = data(deviceId = deviceId, deviceType = dType, timestamp = timestamp, deviceTags = tags, deviceMessage = message)
deviceDataList.+=:(deviceData)
}
deviceDataList.toList
}
}
示例14: MsgPacker
//设置package包名称以及导入依赖的类
package com.ubirch.avatar.core.msgpack
import java.io.ByteArrayInputStream
import com.typesafe.scalalogging.slf4j.StrictLogging
import org.joda.time.{DateTime, DateTimeZone}
import org.msgpack.ScalaMessagePack
import org.msgpack.`type`.ValueType
import scala.collection.mutable
object MsgPacker extends StrictLogging {
def unpack(binData: Array[Byte]) = {
val ids: mutable.ArrayBuffer[Long] = mutable.ArrayBuffer.empty
val temps: mutable.Map[DateTime, Int] = mutable.HashMap.empty
val unpacker = ScalaMessagePack.messagePack.createUnpacker(new ByteArrayInputStream(binData))
val itr = unpacker.iterator()
var done = false
while (itr.hasNext && !done) {
val v = itr.next()
v.getType match {
case ValueType.INTEGER =>
val value = v.asIntegerValue.getLong
ids.append(value)
case ValueType.MAP =>
val map = v.asMapValue()
val keys = map.keySet()
val kItr = keys.iterator()
while (kItr.hasNext) {
val key = kItr.next()
val dt = new DateTime(key.asIntegerValue().longValue() * 1000, DateTimeZone.UTC)
val temp = map.get(key)
temps.update(key = dt, value = temp.asIntegerValue().getInt)
}
done = true
case _ =>
}
}
if (ids.size.equals(4)) {
val did = ids.mkString("-")
logger.info(s"deviceId: $did / t: $temps")
(did, temps.toMap)
}
else
throw new Exception("invalid data")
}
}
示例15: DummyDeviceHistory
//设置package包名称以及导入依赖的类
package com.ubirch.avatar.core.test.model
import java.util.UUID
import com.ubirch.avatar.model.rest.device.DeviceHistory
import com.ubirch.util.uuid.UUIDUtil
import org.joda.time.{DateTime, DateTimeZone}
import org.json4s.JsonAST.JValue
import org.json4s.native.JsonMethods._
import scala.collection.mutable.ListBuffer
object DummyDeviceHistory {
def data(deviceId: String = UUIDUtil.uuidStr,
messageId: UUID = UUIDUtil.uuid,
deviceType: String = "lightsLamp",
timestamp: DateTime = DateTime.now,
deviceTags: Set[String] = Set("ubirch#0", "actor"),
deviceMessage: JValue = parse("""{"foo": 23, "bar": 42}""")
): DeviceHistory = {
DeviceHistory(
messageId = messageId,
deviceDataRawId = UUIDUtil.uuid,
deviceId = deviceId,
deviceName = s"$deviceType $deviceId",
deviceType = deviceType,
deviceTags = deviceTags,
deviceMessage = deviceMessage,
timestamp = timestamp
)
}
def dataSeries(deviceId: String = UUIDUtil.uuidStr,
dType: String = "lightsLamp",
tags: Set[String] = Set("ubirch#0", "actor"),
message: JValue = parse("""{"foo": 23, "bar": 42}"""),
intervalMillis: Long = 1000 * 10, // 10s
timestampOffset: Long = -1000 * 60 * 60, // 1h
elementCount: Int = 5
): List[DeviceHistory] = {
val deviceDataList: ListBuffer[DeviceHistory] = ListBuffer()
val newestDateTime = DateTime.now(DateTimeZone.UTC).minus(timestampOffset)
val range = 0 until elementCount
for (i <- range) {
val timestamp = newestDateTime.minus(i * intervalMillis)
val deviceData = data(deviceId = deviceId, deviceType = dType, timestamp = timestamp, deviceTags = tags, deviceMessage = message)
deviceDataList.+=:(deviceData)
}
deviceDataList.toList
}
}