1/*
2 * Copyright (c) 2022 Huawei Device Co., Ltd.
3 * Licensed under the Apache License, Version 2.0 (the "License");
4 * you may not use this file except in compliance with the License.
5 * You may obtain a copy of the License at
6 *
7 *     http://www.apache.org/licenses/LICENSE-2.0
8 *
9 * Unless required by applicable law or agreed to in writing, software
10 * distributed under the License is distributed on an "AS IS" BASIS,
11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 * See the License for the specific language governing permissions and
13 * limitations under the License.
14 */
15
16package ohos;
17
18import java.util.ArrayList;
19import java.util.List;
20
21/**
22 * collection of members in app fields,
23 * those members will be verified when pack app.
24 */
25class VerifyCollection {
26    /**
27     * Indicates the bundleName of app.
28     */
29    public String bundleName = "";
30
31    /**
32     * Indicates the vendor of app.
33     */
34    public String vendor = "";
35
36    /**
37     * Indicates the versionCode of version.
38     */
39    public int versionCode = -1;
40
41    /**
42     * Indicates the versionName of version.
43     */
44    public String versionName = "";
45
46    /**
47     * Indicates the minCompatibleVersionCode of app.
48     */
49    public int minCompatibleVersionCode = -1;
50
51    /**
52     * Indicates the minApiVersion of app.
53     */
54    public int compatibleApiVersion = -1;
55
56    /**
57     * Indicates the targetApiVersion of app.
58     */
59    public int targetApiVersion = -1;
60
61    /**
62     * Indicates the apiReleaseType of app.
63     */
64    public String releaseType = "";
65
66    /**
67     * Indicates the targetBundleName value of app
68     */
69    public String targetBundleName = "";
70
71    /**
72     * Indicates the targetPriority value of app
73     */
74    public int targetPriority = 0;
75
76    /**
77     * Indicates the debug value of app
78     */
79    public boolean debug = false;
80
81    /**
82     * Indicates the moduleNames of app.
83     */
84    List<String> moduleNames = new ArrayList<>();
85
86    /**
87     * Indicates the packageNames of app.
88     */
89    List<String> packageNames = new ArrayList<>();
90
91    /**
92     * Indicates the split of atomicService in app.
93     */
94    private boolean split = true;
95
96    /**
97     * Indicates the main of atomicService in app.
98     */
99    private String main = "";
100
101    /**
102     * Indicates whether the app type is Shared
103     */
104    private boolean sharedApp = false;
105
106    /**
107     * Indicates the type of bundle
108     */
109    private String bundleType = "app";
110
111    private String moduleName;
112
113    private String moduleType;
114
115    private MultiAppMode multiAppMode = new MultiAppMode();
116
117    public String getMain() {
118        return main;
119    }
120
121    public void setMain(String main) {
122        this.main = main;
123    }
124
125    public boolean isSplit() {
126        return split;
127    }
128
129    public void setSplit(boolean split) {
130        this.split = split;
131    }
132
133    public boolean isSharedApp() {
134        return sharedApp;
135    }
136
137    public void setSharedApp(boolean sharedApp) {
138        this.sharedApp = sharedApp;
139    }
140
141    public void setBundleType(String bundleType) {
142        this.bundleType = bundleType;
143    }
144
145    public String getBundleType() {
146        return bundleType;
147    }
148
149    public String getModuleName() {
150        return moduleName;
151    }
152
153    public void setModuleName(String moduleName) {
154        this.moduleName = moduleName;
155    }
156
157    public String getModuleType() {
158        return moduleType;
159    }
160
161    public void setModuleType(String moduleType) {
162        this.moduleType = moduleType;
163    }
164
165    public MultiAppMode getMultiAppMode() {
166        return multiAppMode;
167    }
168
169    public void setMultiAppMode(MultiAppMode multiAppMode) {
170        this.multiAppMode = multiAppMode;
171    }
172}
173