What's new in EzyPlatform 1.2.0?

This release introduces a shared data-schema model in the common SDK, expands event-schema capabilities, and improves event-schema management APIs.
  1. Introduced CommonDataSchema in the common SDK
    Added CommonDataSchema to standardize how shared data schemas are described across the platform. This provides a reusable foundation for defining schema metadata and reduces duplication between different schema implementations.
  2. EventSchema.DataSchema now extends CommonDataSchema
    EventSchema.DataSchema now inherits from CommonDataSchema, consolidating commonly used schema properties such as dataType, itemType, keyType, valueType, name, required, description, example, and fields into a shared model. This creates a more consistent schema definition structure across the SDK.
  3. Added arrayItemType support for data schemas
    Data schemas now support the arrayItemType property, making it easier to describe the element type contained within array-based data structures. This improves schema clarity for integrations, documentation, and tooling.
  4. Enhanced EventSchema builder architecture
    The existing EventSchema.DataSchema.builder()method remains fully supported for backward compatibility. Internally, the builder implementation now reuses CommonDataSchema.Builder, reducing duplicated code and providing a foundation for future shared schema types. The default value for required is now true. Optional fields should explicitly declare required(false).
  5. Added EventSchemaFetcher discovery API
    EventHandlerManager now provides getEventSchemaFetchers(), allowing applications to retrieve all registered EventSchemaFetcher instances. The method returns a copy of the internal list, enabling callers to inspect or manipulate the returned collection without affecting the internal state of the manager.
  6. Priority-based EventSchemaFetcher resolution remains unchanged
    When multiple EventSchemaFetcherinstances are registered for the same eventName, the fetcher with the highest priority continues to take precedence. This behavior remains unchanged and ensures deterministic schema resolution.