Skip to content

Find a way to encode operations in the URL for nested objects in Antidote (map CRDT) #2

@joaomlneto

Description

@joaomlneto

We need to find a way to encode operations in the URL for nested objects.

We currently have something that is quite flat:
/datatype/operation/bucket/key/[arg1/arg2/arg3/...]

This roughly maps to:

Bucket b = getBucket();
// Here, datatype is explicit! If it's a counter, should be getCounter -- otherwise we can crash
Object obj = b.getDatatype(key);
obj.operation(arg1, arg2, arg3, ...);

First change I'd want to do would be to bring the bucket and key forward:
/bucket/key/datatype/operation/args
Or even use bucket as a subdomain (future work!):
bucket.example.com/key/datatype/operation/args

The second change would be to somehow support the nested operations.
/key/map/read/key/map/read/.../key/datatype/operation/args

I think to do this the current codebase requires some rewrite.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions