/
R.D.X
/
pieplex-api
Обзор
Документация
Войти
/
R.D.X
/
pieplex-api
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
src/main/java/ru/rdx/pieplex/api/data/impl/IRDataImpl.java
84 строки
2 KB
a.kiselev
improvement
11 июл 2026, 09:56
11 июл 2026, 09:56
154ac62
Код
Авторство
О чём код?
package ru.rdx.pieplex.api.data.impl; import ru.rdx.pieplex.api.data.IRData; import ru.rdx.pieplex.api.data.IRDataBuilder; import ru.rdx.pieplex.api.data.DataGraph; import java.util.Map; import java.util.HashMap; import java.util.Collections; public class IRDataImpl implements IRData { private DataGraph source; private byte[] raw; private Map<String, Object> meta = new HashMap<>(); private IRDataImpl(Builder builder) { this.source = builder.source; this.raw = builder.raw; this.meta = builder.meta; } public static Builder builder() { return new Builder(); } public static class Builder implements IRDataBuilder { private DataGraph source; private byte[] raw; private Map<String, Object> meta; @Override public IRDataBuilder source(DataGraph source) { this.source = source; return this; } @Override public IRDataBuilder raw(byte[] raw) { this.raw = raw; return this; } @Override public IRDataBuilder meta(Map<String, Object> meta) { this.meta = meta; return this; } @Override public IRData build() { return new IRDataImpl(this); } } @Override public DataGraph graph() { return this.source; } @Override public byte[] raw() { return this.raw; } @Override public Map<String, Object> getAllMetadata() { return this.meta; } @Override public Object metadata(String key) { return this.meta.get(key); } @Override public void deconstruct() { if(null != this.source) { this.source.deconstruct(); } this.source = null; this.raw = null; //this.meta.clear(); // вопрос с рарушением объектов - открыт this.meta = null; } }