class BinaryMetadataView {
    /** Meta. */
    private final BinaryMetadata meta;

    /** @param meta Meta. */
    public BinaryMetadataView(BinaryMetadata meta) {
        this.meta = meta;
    }

    /** @return Type id. */
    @Order
    public int typeId() {
        return meta.typeId();
    }

    /** @return Type name. */
    @Order(1)
    public String typeName() {
        return meta.typeName();
    }

    /** @return Affinity key field name. */
    @Order(2)
    public String affKeyFieldName() {
        return meta.affinityKeyFieldName();
    }

    /** @return Fields count. */
    @Order(3)
    public int fieldsCount() {
        return meta.fields().size();
    }

    /** @return Fields. */
    @Order(4)
    public String fields() {
        return U.toStringSafe(meta.fields());
    }

    /** @return Schema IDs registered for this type. */
    @Order(5)
    public String schemasIds() {<FILL_FUNCTION_BODY>}

    /** @return {@code True} if this is enum type. */
    @Order(6)
    public boolean isEnum() {
        return meta.isEnum();
    }
}

        List<Integer> ids = new ArrayList<>(meta.schemas().size());

        for (BinarySchema schema : meta.schemas())
            ids.add(schema.schemaId());

        return U.toStringSafe(ids);
    
<no_super_class>