Skip to content

Package: JobStepProperty

JobStepProperty

Coverage

1: /*******************************************************************************
2: * Copyright (c) 2017, 2022 Eurotech and/or its affiliates and others
3: *
4: * This program and the accompanying materials are made
5: * available under the terms of the Eclipse Public License 2.0
6: * which is available at https://www.eclipse.org/legal/epl-2.0/
7: *
8: * SPDX-License-Identifier: EPL-2.0
9: *
10: * Contributors:
11: * Eurotech - initial API and implementation
12: *******************************************************************************/
13: package org.eclipse.kapua.service.job.step.definition;
14:
15: import org.eclipse.kapua.service.job.step.JobStepXmlRegistry;
16:
17: import javax.xml.bind.annotation.XmlAccessType;
18: import javax.xml.bind.annotation.XmlAccessorType;
19: import javax.xml.bind.annotation.XmlRootElement;
20: import javax.xml.bind.annotation.XmlType;
21:
22: /**
23: * {@link JobStepProperty} definition.
24: *
25: * @since 1.0.0
26: */
27: @XmlRootElement(name = "jobStepProperty")
28: @XmlAccessorType(XmlAccessType.PROPERTY)
29: @XmlType(factoryClass = JobStepXmlRegistry.class, factoryMethod = "newJobStepProperty")
30: public interface JobStepProperty {
31:
32: /**
33: * @return
34: * @since 1.0.0
35: */
36: String getName();
37:
38: /**
39: * @param name
40: * @since 1.0.0
41: */
42: void setName(String name);
43:
44: /**
45: * @return
46: * @since 1.0.0
47: */
48: String getPropertyType();
49:
50: /**
51: * @param propertyType
52: * @since 1.0.0
53: */
54: void setPropertyType(String propertyType);
55:
56: /**
57: * @return
58: * @since 1.0.0
59: */
60: String getPropertyValue();
61:
62: /**
63: * @param propertyValue
64: * @since 1.0.0
65: */
66: void setPropertyValue(String propertyValue);
67:
68: /**
69: * @return
70: * @since 1.1.0
71: */
72: String getExampleValue();
73:
74: /**
75: * @param exampleValue
76: * @since 1.1.0
77: */
78: void setExampleValue(String exampleValue);
79:
80: /**
81: * Gets whether this must have a {@link #getPropertyValue()}
82: *
83: * @return {@code true} if must have a {@link #getPropertyValue()}, {@code false} otherwise.
84: * @since 1.5.0
85: */
86: Boolean getRequired();
87:
88: /**
89: * Whether this must have a {@link #getPropertyValue()}
90: *
91: * @param required {@code true} if must have a {@link #getPropertyValue()}, {@code false} otherwise.
92: * @since 1.5.0
93: */
94: void setRequired(Boolean required);
95:
96: /**
97: * Gets whether this {@link #getPropertyValue()} is a secret that shouldn't be shown (i.e. passwords).
98: *
99: * @return {@code true} if {@link #getPropertyValue()} is a secret that shouldn't be shown, {@code false} otherwise.
100: * @since 1.6.0
101: */
102: Boolean getSecret();
103:
104: /**
105: * Whether t{@link #getPropertyValue()} is a secret that shouldn't be shown (i.e. passwords).
106: *
107: * @param se {@code true} if {@link #getPropertyValue()} is a secret that shouldn't be shown, {@code false} otherwise.
108: * @since 1.6.0
109: */
110: void setSecret(Boolean se);
111:
112: /**
113: * @return
114: * @since 1.5.0
115: */
116: Integer getMinLength();
117:
118: /**
119: * @param minLength
120: * @since 1.5.0
121: */
122: void setMinLength(Integer minLength);
123:
124: /**
125: * @return
126: * @since 1.5.0
127: */
128: Integer getMaxLength();
129:
130: /**
131: * @param maxLength
132: * @since 1.5.0
133: */
134: void setMaxLength(Integer maxLength);
135:
136: /**
137: * @return
138: * @since 1.5.0
139: */
140: String getMinValue();
141:
142: /**
143: * @param minValue
144: * @since 1.5.0
145: */
146: void setMinValue(String minValue);
147:
148: /**
149: * @return
150: * @since 1.5.0
151: */
152: String getMaxValue();
153:
154: /**
155: * @param maxValue
156: * @since 1.5.0
157: */
158: void setMaxValue(String maxValue);
159:
160: /**
161: * @return
162: * @since 1.5.0
163: */
164: String getValidationRegex();
165:
166: /**
167: * @param validationRegex
168: * @since 1.5.0
169: */
170: void setValidationRegex(String validationRegex);
171: }