java - 在没有所有必要数据的情况下修补 Google 事件开始日期和结束日期

标签 java datetime calendar google-calendar-api

我正在实现可以通过 Calendar API v3 Client Library for Java. 修补 Google 日历 Activity 的客户端

方法:

com.google.api.services.calendar.Calendar.Events#patch

我面临的问题是 com.google.api.services.calendar.model.Event 实体中的 startend 字段是复杂的对象,需要构建多个内容:

  1. com.google.api.client.util.DateTime
  2. 时区

DateTime 具有名为 dateOnly 的字段,该字段根据事件是否为全天事件而设置为 true/false。问题来了。如果我只想更新日期,并且只从前端发送日期(没有标记是否是全天事件或 dateOnly 是否适用),我无法构造 DateTime 对象,因为我不知道是否应该使用 DateTime 的构造函数,并将 dateOnly 设置为 true 或设置为 false。

就要求而言,这是正确的。由于我们有 PATCH,我们可以更新特定字段,甚至无需触及其余字段。然而,在这种情况下,由于字段相当复杂,所以很难找到不更新dateOnly标志,而是更新update值或tzShift的方法。

每次打补丁时,我都会考虑从 Google 加载事件。因此,我可以读取 dateOnly 标志并将其设置为旧值。有没有更方便的方法来解决这个问题?

最佳答案

根据 Events 中的文档未找到 dateOnly 资源。 但您可以使用补丁 Events: patch 使用以下选项

{
    "start": {
       "date": "2017-05-05",
       "dateTime": "",
       "timeZone": "America/Los_Angeles"
    },
    "end": {
       "date": "2017-05-06",
       "dateTime": "",
       "timeZone": "America/Los_Angeles"
    }
}

希望对您有帮助。

关于java - 在没有所有必要数据的情况下修补 Google 事件开始日期和结束日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46004075/

相关文章:

php - 现代部落事件日历元查询打破 wp_query

java - 如何跨 Activity 维护 CheckBox 状态

java - 带有 mongodb 的 Spring Data - 如何访问文档中的动态字段?

c++ - 使用带有时区字符串的 Boost 日期时间库解析失败

c# - 如何根据同月的日期查找一个月中特定日期的第 5 天或结束日期

java - 如何在Java中使用Unix纪元每分钟打印数据

java - 为什么日期转换会返回不同的时间戳?

java - 从另一个数组定义数组

Java文本后面的竖线?就像编辑器中指示页面结束位置的行一样

SQL - 从数据库中选择最多 'active' 时间