Skip to content

Commit

Permalink
feat: add id as field
Browse files Browse the repository at this point in the history
Signed-off-by: Otavio Santana <otaviopolianasantana@gmail.com>
  • Loading branch information
otaviojava committed May 19, 2023
1 parent 68c1099 commit b3f1867
Show file tree
Hide file tree
Showing 2 changed files with 11 additions and 0 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@
import com.orientechnologies.orient.core.db.ODatabaseSession;
import com.orientechnologies.orient.core.fetch.OFetchHelper;
import com.orientechnologies.orient.core.id.ORecordId;
import com.orientechnologies.orient.core.record.ORecord;
import com.orientechnologies.orient.core.record.impl.ODocument;
import com.orientechnologies.orient.core.sql.executor.OResult;
import com.orientechnologies.orient.core.sql.executor.OResultSet;
Expand All @@ -33,6 +34,7 @@
import java.util.List;
import java.util.Map;
import java.util.Objects;
import java.util.Optional;
import java.util.stream.Stream;
import java.util.stream.StreamSupport;

Expand Down Expand Up @@ -103,6 +105,12 @@ public Iterable<DocumentEntity> insert(Iterable<DocumentEntity> entities, Durati
@Override
public DocumentEntity update(DocumentEntity entity) {
requireNonNull(entity, "Entity is required");
Optional<Document> rid = entity.find(RID_FIELD);
Optional<Document> id = entity.find("_id");
try (ODatabaseSession tx = pool.acquire()) {
ORecord document = tx.load((ORecord) rid.get());
updateEntity(entity, document);
}
return insert(entity);
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,8 @@ final class OrientDBConverter {
static final String RID_FIELD = "@rid";
static final String VERSION_FIELD = "@version";

static final String ID_FIELD = "_id";

private OrientDBConverter() {
}

Expand Down Expand Up @@ -70,6 +72,7 @@ static DocumentEntity convert(OResult row) {
long clusterPosition = identity.getClusterPosition();
entity.add(VERSION_FIELD, element.getVersion());
entity.add(RID_FIELD, "#" + clusterId + ":" + clusterPosition);
entity.add(ID_FIELD, "#" + clusterId + ":" + clusterPosition);
return entity;
}

Expand Down

0 comments on commit b3f1867

Please sign in to comment.