453024232a224eb031b2b675ef7fb621c05d6a08
[dcaegen2/collectors/datafile.git] /
1 /*-
2  * ============LICENSE_START======================================================================
3  * Copyright (C) 2018 NOKIA Intellectual Property, 2018-2019 Nordix Foundation. All rights reserved.
4  * ===============================================================================================
5  * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
6  * in compliance with the License. You may obtain a copy of the License at
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software distributed under the License
11  * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
12  * or implied. See the License for the specific language governing permissions and limitations under
13  * the License.
14  * ============LICENSE_END========================================================================
15  */
16
17 package org.onap.dcaegen2.collectors.datafile.model;
18
19 import com.google.gson.annotations.SerializedName;
20 import java.nio.file.Path;
21 import org.immutables.gson.Gson;
22 import org.immutables.value.Value;
23 import org.onap.dcaegen2.services.sdk.rest.services.model.DmaapModel;
24
25 /**
26  * Information needed to publish a file to DataRouter.
27  *
28  * @author <a href="mailto:przemyslaw.wasala@nokia.com">Przemysław Wąsala</a> on 5/8/18
29  * @author <a href="mailto:henrik.b.andersson@est.tech">Henrik Andersson</a>
30  */
31
32 @Value.Immutable
33 @Gson.TypeAdapters
34 public interface FilePublishInformation extends DmaapModel {
35
36     @SerializedName("productName")
37     String getProductName();
38
39     @SerializedName("vendorName")
40     String getVendorName();
41
42     @SerializedName("lastEpochMicrosec")
43     String getLastEpochMicrosec();
44
45     @SerializedName("sourceName")
46     String getSourceName();
47
48     @SerializedName("startEpochMicrosec")
49     String getStartEpochMicrosec();
50
51     @SerializedName("timeZoneOffset")
52     String getTimeZoneOffset();
53
54     @SerializedName("name")
55     String getName();
56
57     @SerializedName("location")
58     String getLocation();
59
60     @SerializedName("internalLocation")
61     Path getInternalLocation();
62
63     @SerializedName("compression")
64     String getCompression();
65
66     @SerializedName("fileFormatType")
67     String getFileFormatType();
68
69     @SerializedName("fileFormatVersion")
70     String getFileFormatVersion();
71 }