2 * Copyright (c) 2010-2022 Contributors to the openHAB project
4 * See the NOTICE file(s) distributed with this work for additional
7 * This program and the accompanying materials are made available under the
8 * terms of the Eclipse Public License 2.0 which is available at
9 * http://www.eclipse.org/legal/epl-2.0
11 * SPDX-License-Identifier: EPL-2.0
13 package org.openhab.binding.icloud.internal.json.request;
15 import org.eclipse.jdt.annotation.NonNullByDefault;
18 * Serializable request for icloud device data.
20 * @author Patrik Gfeller - Initial Contribution
24 public class ICloudAccountDataRequest {
25 @SuppressWarnings("unused")
26 private ClientContext clientContext;
28 private ICloudAccountDataRequest() {
29 this.clientContext = ClientContext.defaultInstance();
32 public static ICloudAccountDataRequest defaultInstance() {
33 return new ICloudAccountDataRequest();
36 public static class ClientContext {
37 @SuppressWarnings("unused")
38 private String appName = "FindMyiPhone";
39 @SuppressWarnings("unused")
40 private boolean fmly = true;
41 @SuppressWarnings("unused")
42 private String appVersion = "5.0";
43 @SuppressWarnings("unused")
44 private String buildVersion = "376";
45 @SuppressWarnings("unused")
46 private int clientTimestamp = 0;
47 @SuppressWarnings("unused")
48 private String deviceUDID = "";
49 @SuppressWarnings("unused")
50 private int inactiveTime = 1;
51 @SuppressWarnings("unused")
52 private String osVersion = "14.0";
53 @SuppressWarnings("unused")
54 private String productType = "iPhone14,2";
56 private ClientContext() {
57 // empty to hide constructor
60 public static ClientContext defaultInstance() {
61 return new ClientContext();