This is an automated email from the ASF dual-hosted git repository.
nizhikov pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/ignite.git
The following commit(s) were added to refs/heads/master by this push:
new 23a5157ec94 IGNITE-25196 Make BinaryClassDescriptor package private
(#12016)
23a5157ec94 is described below
commit 23a5157ec94b3e51f371db3cbc2421d948a67a5a
Author: Maksim Davydov <[email protected]>
AuthorDate: Wed Apr 23 19:08:45 2025 +0300
IGNITE-25196 Make BinaryClassDescriptor package private (#12016)
---
.../internal/binary/BinaryClassDescriptor.java | 2 +-
.../ignite/internal/binary/BinaryContext.java | 47 ++++++++++++++++++----
.../apache/ignite/internal/binary/BinaryUtils.java | 4 +-
.../internal/binary/builder/BinaryBuilderEnum.java | 2 +-
.../binary/builder/BinaryBuilderSerializer.java | 4 +-
.../binary/builder/BinaryEnumArrayLazyValue.java | 2 +-
.../binary/builder/BinaryObjectArrayLazyValue.java | 2 +-
.../binary/builder/BinaryObjectBuilderImpl.java | 2 +-
.../ignite/internal/client/thin/ClientBinary.java | 5 +--
.../binary/CacheObjectBinaryProcessorImpl.java | 5 +--
.../distributed/dht/atomic/GridDhtAtomicCache.java | 2 +-
.../processors/query/GridQueryProcessor.java | 2 +-
12 files changed, 55 insertions(+), 24 deletions(-)
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/binary/BinaryClassDescriptor.java
b/modules/core/src/main/java/org/apache/ignite/internal/binary/BinaryClassDescriptor.java
index e2b041134c8..f0266038c35 100644
---
a/modules/core/src/main/java/org/apache/ignite/internal/binary/BinaryClassDescriptor.java
+++
b/modules/core/src/main/java/org/apache/ignite/internal/binary/BinaryClassDescriptor.java
@@ -60,7 +60,7 @@ import static
org.apache.ignite.internal.util.IgniteUtils.isLambda;
/**
* Binary class descriptor.
*/
-public class BinaryClassDescriptor {
+class BinaryClassDescriptor {
/** */
@GridToStringExclude
private final BinaryContext ctx;
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/binary/BinaryContext.java
b/modules/core/src/main/java/org/apache/ignite/internal/binary/BinaryContext.java
index 8f901aee76a..7984c4a2a7e 100644
---
a/modules/core/src/main/java/org/apache/ignite/internal/binary/BinaryContext.java
+++
b/modules/core/src/main/java/org/apache/ignite/internal/binary/BinaryContext.java
@@ -566,6 +566,39 @@ public class BinaryContext {
return clsNames;
}
+ /**
+ * Attempts registration of the provided class. If the type is already
registered, then an existing descriptor is
+ * returned.
+ *
+ * @param cls Class to register.
+ * @param registerMeta If {@code true}, then metadata will be registered
along with the class descriptor.
+ * @param failIfUnregistered Throw exception if class isn't registered.
+ * @return Class descriptor ID.
+ * @throws BinaryObjectException In case of error.
+ */
+ public int registerType(
+ Class<?> cls,
+ boolean registerMeta,
+ boolean failIfUnregistered
+ ) throws BinaryObjectException {
+ return registerClass(cls, registerMeta, failIfUnregistered).typeId();
+ }
+
+ /**
+ * @param cls Class.
+ * @param failIfUnregistered Throw exception if class isn't registered.
+ * @param registerMeta If {@code true}, then metadata will be registered
along with the class descriptor.
+ * @return Class descriptor ID.
+ * @throws BinaryObjectException In case of error.
+ */
+ public int registerTypeLocally(
+ Class<?> cls,
+ boolean registerMeta,
+ boolean failIfUnregistered
+ ) throws BinaryObjectException {
+ return registerClass(cls, registerMeta, failIfUnregistered,
true).typeId();
+ }
+
/**
* Attempts registration of the provided class. If the type is already
registered, then an existing descriptor is
* returned.
@@ -576,7 +609,7 @@ public class BinaryContext {
* @return Class descriptor.
* @throws BinaryObjectException In case of error.
*/
- @NotNull public BinaryClassDescriptor registerClass(
+ @NotNull BinaryClassDescriptor registerClass(
Class<?> cls,
boolean registerMeta,
boolean failIfUnregistered
@@ -592,7 +625,7 @@ public class BinaryContext {
* @return Class descriptor.
* @throws BinaryObjectException In case of error.
*/
- @NotNull public BinaryClassDescriptor registerClass(
+ @NotNull BinaryClassDescriptor registerClass(
Class<?> cls,
boolean registerMeta,
boolean failIfUnregistered,
@@ -629,7 +662,7 @@ public class BinaryContext {
* @return A descriptor for the given class. If the class hasn't been
registered yet, then a new descriptor will be
* created, but its {@link BinaryClassDescriptor#registered()} will be
{@code false}.
*/
- @NotNull public BinaryClassDescriptor descriptorForClass(Class<?> cls) {
+ @NotNull BinaryClassDescriptor descriptorForClass(Class<?> cls) {
assert cls != null;
BinaryClassDescriptor desc = descByCls.get(cls);
@@ -700,7 +733,7 @@ public class BinaryContext {
* @param registerMeta If {@code true}, then metadata will be registered
along with the type descriptor.
* @return Class descriptor.
*/
- public BinaryClassDescriptor descriptorForTypeId(
+ BinaryClassDescriptor descriptorForTypeId(
boolean userType,
int typeId,
ClassLoader ldr,
@@ -806,7 +839,7 @@ public class BinaryContext {
* @param onlyLocReg {@code true} if descriptor need to register only
locally when registration is required at all.
* @return Registered class descriptor.
*/
- @NotNull public BinaryClassDescriptor registerDescriptor(
+ @NotNull BinaryClassDescriptor registerDescriptor(
BinaryClassDescriptor desc,
boolean registerMeta,
boolean onlyLocReg
@@ -1067,7 +1100,7 @@ public class BinaryContext {
* @param id Type ID.
* @return GridBinaryClassDescriptor.
*/
- public BinaryClassDescriptor registerPredefinedType(Class<?> cls, int id) {
+ BinaryClassDescriptor registerPredefinedType(Class<?> cls, int id) {
return registerPredefinedType(cls, id, null, true);
}
@@ -1077,7 +1110,7 @@ public class BinaryContext {
* @param affFieldName Affinity field name.
* @return GridBinaryClassDescriptor.
*/
- public BinaryClassDescriptor registerPredefinedType(Class<?> cls, int id,
String affFieldName, boolean registered) {
+ BinaryClassDescriptor registerPredefinedType(Class<?> cls, int id, String
affFieldName, boolean registered) {
String simpleClsName =
SIMPLE_NAME_LOWER_CASE_MAPPER.typeName(cls.getName());
if (id == 0)
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/binary/BinaryUtils.java
b/modules/core/src/main/java/org/apache/ignite/internal/binary/BinaryUtils.java
index 9fbd3b9873d..5e0ebf0f69e 100644
---
a/modules/core/src/main/java/org/apache/ignite/internal/binary/BinaryUtils.java
+++
b/modules/core/src/main/java/org/apache/ignite/internal/binary/BinaryUtils.java
@@ -1680,7 +1680,7 @@ public class BinaryUtils {
// forces registering of class by type id, at least locally
if (useCache)
- ctx.registerClass(cls, false, false);
+ ctx.registerType(cls, false, false);
}
return cls;
@@ -1709,7 +1709,7 @@ public class BinaryUtils {
throw new BinaryInvalidTypeException("Failed to load the
class: " + clsName, e);
}
- ctx.registerClass(cls, false, false);
+ ctx.registerType(cls, false, false);
}
return cls;
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/binary/builder/BinaryBuilderEnum.java
b/modules/core/src/main/java/org/apache/ignite/internal/binary/builder/BinaryBuilderEnum.java
index 2e77d90e633..307041d4d9e 100644
---
a/modules/core/src/main/java/org/apache/ignite/internal/binary/builder/BinaryBuilderEnum.java
+++
b/modules/core/src/main/java/org/apache/ignite/internal/binary/builder/BinaryBuilderEnum.java
@@ -63,7 +63,7 @@ class BinaryBuilderEnum implements
BinaryBuilderSerializationAware {
throw new BinaryInvalidTypeException("Failed to load the
class: " + clsName, e);
}
- this.typeId = reader.binaryContext().registerClass(cls, true,
false).typeId();
+ this.typeId = reader.binaryContext().registerType(cls, true,
false);
}
else {
this.typeId = typeId;
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/binary/builder/BinaryBuilderSerializer.java
b/modules/core/src/main/java/org/apache/ignite/internal/binary/builder/BinaryBuilderSerializer.java
index 8ba880069df..6f4421cc788 100644
---
a/modules/core/src/main/java/org/apache/ignite/internal/binary/builder/BinaryBuilderSerializer.java
+++
b/modules/core/src/main/java/org/apache/ignite/internal/binary/builder/BinaryBuilderSerializer.java
@@ -131,7 +131,7 @@ class BinaryBuilderSerializer {
int typeId = writer.context().typeId(clsName);
// Need register class for marshaller to be able to deserialize
enum value.
- writer.context().registerClass(((Enum)val).getDeclaringClass(),
true, false);
+ writer.context().registerType(((Enum)val).getDeclaringClass(),
true, false);
writer.writeByte(GridBinaryMarshaller.ENUM);
writer.writeInt(typeId);
@@ -216,7 +216,7 @@ class BinaryBuilderSerializer {
if (compCls.isEnum()) {
Enum[] enumArr = (Enum[])val;
- writer.context().registerClass(compCls, true, false);
+ writer.context().registerType(compCls, true, false);
writer.writeByte(GridBinaryMarshaller.ENUM_ARR);
writer.writeInt(compTypeId);
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/binary/builder/BinaryEnumArrayLazyValue.java
b/modules/core/src/main/java/org/apache/ignite/internal/binary/builder/BinaryEnumArrayLazyValue.java
index 0998e8dadbd..4bbba382018 100644
---
a/modules/core/src/main/java/org/apache/ignite/internal/binary/builder/BinaryEnumArrayLazyValue.java
+++
b/modules/core/src/main/java/org/apache/ignite/internal/binary/builder/BinaryEnumArrayLazyValue.java
@@ -56,7 +56,7 @@ class BinaryEnumArrayLazyValue extends
BinaryAbstractLazyValue {
throw new BinaryInvalidTypeException("Failed to load the
class: " + clsName, e);
}
- compTypeId = reader.binaryContext().registerClass(cls, false,
false).typeId();
+ compTypeId = reader.binaryContext().registerType(cls, false,
false);
}
else {
compTypeId = typeId;
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/binary/builder/BinaryObjectArrayLazyValue.java
b/modules/core/src/main/java/org/apache/ignite/internal/binary/builder/BinaryObjectArrayLazyValue.java
index 6e815a7bd68..0e9d2415bc6 100644
---
a/modules/core/src/main/java/org/apache/ignite/internal/binary/builder/BinaryObjectArrayLazyValue.java
+++
b/modules/core/src/main/java/org/apache/ignite/internal/binary/builder/BinaryObjectArrayLazyValue.java
@@ -55,7 +55,7 @@ class BinaryObjectArrayLazyValue extends
BinaryAbstractLazyValue {
throw new BinaryInvalidTypeException("Failed to load the
class: " + clsName, e);
}
- compTypeId = reader.binaryContext().registerClass(cls, false,
false).typeId();
+ compTypeId = reader.binaryContext().registerType(cls, false,
false);
}
else {
compTypeId = typeId;
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/binary/builder/BinaryObjectBuilderImpl.java
b/modules/core/src/main/java/org/apache/ignite/internal/binary/builder/BinaryObjectBuilderImpl.java
index 74b8a3d12fb..5d7596a91a7 100644
---
a/modules/core/src/main/java/org/apache/ignite/internal/binary/builder/BinaryObjectBuilderImpl.java
+++
b/modules/core/src/main/java/org/apache/ignite/internal/binary/builder/BinaryObjectBuilderImpl.java
@@ -156,7 +156,7 @@ class BinaryObjectBuilderImpl implements
BinaryObjectBuilder {
throw new BinaryInvalidTypeException("Failed to load the
class: " + clsNameToWrite, e);
}
- this.typeId = ctx.registerClass(cls, true, false).typeId();
+ this.typeId = ctx.registerType(cls, true, false);
registeredType = false;
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/client/thin/ClientBinary.java
b/modules/core/src/main/java/org/apache/ignite/internal/client/thin/ClientBinary.java
index 05840076d13..f2d64499456 100644
---
a/modules/core/src/main/java/org/apache/ignite/internal/client/thin/ClientBinary.java
+++
b/modules/core/src/main/java/org/apache/ignite/internal/client/thin/ClientBinary.java
@@ -24,7 +24,6 @@ import org.apache.ignite.binary.BinaryObject;
import org.apache.ignite.binary.BinaryObjectBuilder;
import org.apache.ignite.binary.BinaryObjectException;
import org.apache.ignite.binary.BinaryType;
-import org.apache.ignite.internal.binary.BinaryClassDescriptor;
import org.apache.ignite.internal.binary.BinaryContext;
import org.apache.ignite.internal.binary.BinaryEnumObjectImpl;
import org.apache.ignite.internal.binary.BinaryMetadata;
@@ -168,9 +167,9 @@ public class ClientBinary implements IgniteBinary {
/** {@inheritDoc} */
@Override public BinaryType registerClass(Class<?> cls) throws
BinaryObjectException {
- BinaryClassDescriptor clsDesc = binaryContext().registerClass(cls,
true, false);
+ int typeId = binaryContext().registerType(cls, true, false);
- return binaryContext().metadata(clsDesc.typeId());
+ return binaryContext().metadata(typeId);
}
/** @return Binary context. */
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/binary/CacheObjectBinaryProcessorImpl.java
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/binary/CacheObjectBinaryProcessorImpl.java
index df229d1bc6f..027a12389dc 100644
---
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/binary/CacheObjectBinaryProcessorImpl.java
+++
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/binary/CacheObjectBinaryProcessorImpl.java
@@ -59,7 +59,6 @@ import org.apache.ignite.internal.IgniteNodeAttributes;
import org.apache.ignite.internal.NodeStoppingException;
import org.apache.ignite.internal.UnregisteredBinaryTypeException;
import org.apache.ignite.internal.binary.BinaryArray;
-import org.apache.ignite.internal.binary.BinaryClassDescriptor;
import org.apache.ignite.internal.binary.BinaryContext;
import org.apache.ignite.internal.binary.BinaryEnumObjectImpl;
import org.apache.ignite.internal.binary.BinaryFieldMetadata;
@@ -1625,9 +1624,9 @@ public class CacheObjectBinaryProcessorImpl extends
GridProcessorAdapter impleme
/** {@inheritDoc} */
@Override public BinaryType registerClass(Class<?> cls) throws
BinaryObjectException {
- BinaryClassDescriptor clsDesc = binaryCtx.registerClass(cls, true,
false);
+ int typeId = binaryCtx.registerType(cls, true, false);
- return metadata(clsDesc.typeId());
+ return metadata(typeId);
}
/** */
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridDhtAtomicCache.java
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridDhtAtomicCache.java
index 50ff074b2b4..d525db830cd 100644
---
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridDhtAtomicCache.java
+++
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridDhtAtomicCache.java
@@ -1883,7 +1883,7 @@ public class GridDhtAtomicCache<K, V> extends
GridDhtCacheAdapter<K, V> {
assert cacheObjProc instanceof
CacheObjectBinaryProcessorImpl;
((CacheObjectBinaryProcessorImpl)cacheObjProc)
- .binaryContext().registerClass(ex.cls(), true,
false);
+ .binaryContext().registerType(ex.cls(), true,
false);
}
catch (UnregisteredBinaryTypeException ex) {
if (ex.future() != null) {
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/processors/query/GridQueryProcessor.java
b/modules/core/src/main/java/org/apache/ignite/internal/processors/query/GridQueryProcessor.java
index 7fc42d8e048..77ff80730f6 100644
---
a/modules/core/src/main/java/org/apache/ignite/internal/processors/query/GridQueryProcessor.java
+++
b/modules/core/src/main/java/org/apache/ignite/internal/processors/query/GridQueryProcessor.java
@@ -1510,7 +1510,7 @@ public class GridQueryProcessor extends
GridProcessorAdapter {
if (cls != null) {
if (!platformOnly)
- binProc.binaryContext().registerClass(cls, true, false,
true);
+ binProc.binaryContext().registerTypeLocally(cls, true,
false);
}
else
registerPlatformTypeLocally(clsName, binProc);