|
@@ -28,6 +28,7 @@ import org.elasticsearch.xpack.application.connector.ConnectorConfiguration;
|
|
|
import org.elasticsearch.xpack.application.connector.ConnectorFiltering;
|
|
|
import org.elasticsearch.xpack.application.connector.ConnectorIngestPipeline;
|
|
|
import org.elasticsearch.xpack.application.connector.ConnectorSyncStatus;
|
|
|
+import org.elasticsearch.xpack.application.connector.ConnectorUtils;
|
|
|
|
|
|
import java.io.IOException;
|
|
|
import java.time.Instant;
|
|
@@ -265,19 +266,19 @@ public class ConnectorSyncJob implements Writeable, ToXContentObject {
|
|
|
static {
|
|
|
PARSER.declareField(
|
|
|
optionalConstructorArg(),
|
|
|
- (p, c) -> parseNullableInstant(p),
|
|
|
+ (p, c) -> ConnectorUtils.parseNullableInstant(p, CANCELATION_REQUESTED_AT_FIELD.getPreferredName()),
|
|
|
CANCELATION_REQUESTED_AT_FIELD,
|
|
|
ObjectParser.ValueType.STRING_OR_NULL
|
|
|
);
|
|
|
PARSER.declareField(
|
|
|
optionalConstructorArg(),
|
|
|
- (p, c) -> parseNullableInstant(p),
|
|
|
+ (p, c) -> ConnectorUtils.parseNullableInstant(p, CANCELED_AT_FIELD.getPreferredName()),
|
|
|
CANCELED_AT_FIELD,
|
|
|
ObjectParser.ValueType.STRING_OR_NULL
|
|
|
);
|
|
|
PARSER.declareField(
|
|
|
optionalConstructorArg(),
|
|
|
- (p, c) -> parseNullableInstant(p),
|
|
|
+ (p, c) -> ConnectorUtils.parseNullableInstant(p, COMPLETED_AT_FIELD.getPreferredName()),
|
|
|
COMPLETED_AT_FIELD,
|
|
|
ObjectParser.ValueType.STRING_OR_NULL
|
|
|
);
|
|
@@ -287,7 +288,12 @@ public class ConnectorSyncJob implements Writeable, ToXContentObject {
|
|
|
CONNECTOR_FIELD,
|
|
|
ObjectParser.ValueType.OBJECT
|
|
|
);
|
|
|
- PARSER.declareField(constructorArg(), (p, c) -> Instant.parse(p.text()), CREATED_AT_FIELD, ObjectParser.ValueType.STRING);
|
|
|
+ PARSER.declareField(
|
|
|
+ constructorArg(),
|
|
|
+ (p, c) -> ConnectorUtils.parseInstant(p, CREATED_AT_FIELD.getPreferredName()),
|
|
|
+ CREATED_AT_FIELD,
|
|
|
+ ObjectParser.ValueType.STRING
|
|
|
+ );
|
|
|
PARSER.declareLong(constructorArg(), DELETED_DOCUMENT_COUNT_FIELD);
|
|
|
PARSER.declareStringOrNull(optionalConstructorArg(), ERROR_FIELD);
|
|
|
PARSER.declareString(constructorArg(), ID_FIELD);
|
|
@@ -299,11 +305,16 @@ public class ConnectorSyncJob implements Writeable, ToXContentObject {
|
|
|
JOB_TYPE_FIELD,
|
|
|
ObjectParser.ValueType.STRING
|
|
|
);
|
|
|
- PARSER.declareField(constructorArg(), (p, c) -> parseNullableInstant(p), LAST_SEEN_FIELD, ObjectParser.ValueType.STRING_OR_NULL);
|
|
|
+ PARSER.declareField(
|
|
|
+ constructorArg(),
|
|
|
+ (p, c) -> ConnectorUtils.parseNullableInstant(p, LAST_SEEN_FIELD.getPreferredName()),
|
|
|
+ LAST_SEEN_FIELD,
|
|
|
+ ObjectParser.ValueType.STRING_OR_NULL
|
|
|
+ );
|
|
|
PARSER.declareField(constructorArg(), (p, c) -> p.map(), METADATA_FIELD, ObjectParser.ValueType.OBJECT);
|
|
|
PARSER.declareField(
|
|
|
optionalConstructorArg(),
|
|
|
- (p, c) -> parseNullableInstant(p),
|
|
|
+ (p, c) -> ConnectorUtils.parseNullableInstant(p, STARTED_AT_FIELD.getPreferredName()),
|
|
|
STARTED_AT_FIELD,
|
|
|
ObjectParser.ValueType.STRING_OR_NULL
|
|
|
);
|
|
@@ -323,10 +334,6 @@ public class ConnectorSyncJob implements Writeable, ToXContentObject {
|
|
|
PARSER.declareStringOrNull(optionalConstructorArg(), WORKER_HOSTNAME_FIELD);
|
|
|
}
|
|
|
|
|
|
- private static Instant parseNullableInstant(XContentParser p) throws IOException {
|
|
|
- return p.currentToken() == XContentParser.Token.VALUE_NULL ? null : Instant.parse(p.text());
|
|
|
- }
|
|
|
-
|
|
|
@SuppressWarnings("unchecked")
|
|
|
private static final ConstructingObjectParser<Connector, String> SYNC_JOB_CONNECTOR_PARSER = new ConstructingObjectParser<>(
|
|
|
"sync_job_connector",
|