From ed0568abd688ec9728454736471f2f6edfe014a2 Mon Sep 17 00:00:00 2001 From: "slav.babanin" Date: Fri, 20 Jun 2025 16:41:27 -0700 Subject: [PATCH] Remove unused OperationTypeCodec. --- .../ChangeStreamDocumentCodec.java | 2 - .../changestream/OperationTypeCodec.java | 41 ------------ .../OperationTypeCodecSpecification.groovy | 64 ------------------- 3 files changed, 107 deletions(-) delete mode 100644 driver-core/src/main/com/mongodb/client/model/changestream/OperationTypeCodec.java delete mode 100644 driver-core/src/test/unit/com/mongodb/client/model/changestream/OperationTypeCodecSpecification.groovy diff --git a/driver-core/src/main/com/mongodb/client/model/changestream/ChangeStreamDocumentCodec.java b/driver-core/src/main/com/mongodb/client/model/changestream/ChangeStreamDocumentCodec.java index c482903ff7b..7889a2dd4bb 100644 --- a/driver-core/src/main/com/mongodb/client/model/changestream/ChangeStreamDocumentCodec.java +++ b/driver-core/src/main/com/mongodb/client/model/changestream/ChangeStreamDocumentCodec.java @@ -35,8 +35,6 @@ @SuppressWarnings({"unchecked", "rawtypes"}) final class ChangeStreamDocumentCodec implements Codec> { - private static final OperationTypeCodec OPERATION_TYPE_CODEC = new OperationTypeCodec(); - private final Codec> codec; ChangeStreamDocumentCodec(final Class fullDocumentClass, final CodecRegistry codecRegistry) { diff --git a/driver-core/src/main/com/mongodb/client/model/changestream/OperationTypeCodec.java b/driver-core/src/main/com/mongodb/client/model/changestream/OperationTypeCodec.java deleted file mode 100644 index 927ec19b095..00000000000 --- a/driver-core/src/main/com/mongodb/client/model/changestream/OperationTypeCodec.java +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Copyright 2008-present MongoDB, Inc. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package com.mongodb.client.model.changestream; - -import org.bson.BsonReader; -import org.bson.BsonWriter; -import org.bson.codecs.Codec; -import org.bson.codecs.DecoderContext; -import org.bson.codecs.EncoderContext; - -final class OperationTypeCodec implements Codec { - - @Override - public OperationType decode(final BsonReader reader, final DecoderContext decoderContext) { - return OperationType.fromString(reader.readString()); - } - - @Override - public void encode(final BsonWriter writer, final OperationType value, final EncoderContext encoderContext) { - writer.writeString(value.getValue()); - } - - @Override - public Class getEncoderClass() { - return OperationType.class; - } -} diff --git a/driver-core/src/test/unit/com/mongodb/client/model/changestream/OperationTypeCodecSpecification.groovy b/driver-core/src/test/unit/com/mongodb/client/model/changestream/OperationTypeCodecSpecification.groovy deleted file mode 100644 index ff3e88eaf7b..00000000000 --- a/driver-core/src/test/unit/com/mongodb/client/model/changestream/OperationTypeCodecSpecification.groovy +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Copyright 2008-present MongoDB, Inc. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package com.mongodb.client.model.changestream - -import org.bson.BsonDocument -import org.bson.BsonDocumentReader -import org.bson.BsonDocumentWriter -import org.bson.BsonReader -import org.bson.codecs.DecoderContext -import org.bson.codecs.EncoderContext -import spock.lang.Specification - -class OperationTypeCodecSpecification extends Specification { - - def 'should round trip OperationType successfully'() { - when: - def codec = new OperationTypeCodec() - - then: - codec.getEncoderClass() == OperationType - - when: - def writer = new BsonDocumentWriter(new BsonDocument()) - writer.writeStartDocument() - writer.writeName('operationType') - codec.encode(writer, operationType, EncoderContext.builder().build()) - writer.writeEndDocument() - - then: - operationType.getValue() == writer.getDocument().getString('operationType').getValue() - - when: - BsonReader bsonReader = new BsonDocumentReader(writer.getDocument()) - bsonReader.readStartDocument() - bsonReader.readName() - OperationType actual = codec.decode(bsonReader, DecoderContext.builder().build()) - - then: - operationType == actual - - where: - operationType << [ - OperationType.DELETE, - OperationType.INSERT, - OperationType.INVALIDATE, - OperationType.REPLACE, - OperationType.UPDATE - ] - } -}