Comments (5)
To be clear, the current inplementation, while not efficient, does accomplish the update of the IntervalBlock correctly does it not? (and it could be that a simple assignment statement might work as well). I suspect that if you are working with large IntervalBlocks (each with a large number of interval readings) you might have time problems with large transactions as you update the entire collection.
BUT, you are not guaranteed to have a 1.x.1 association of old IntervalReadings to new IntervalReadings. Durations and Starts may change. In that case, the evaluation of what needs replaced and what does not may become rather complex.
from openespi-common-java.
I'm still not clear on the behavior needed for IntervalBlock Merge.
Do we need both a merge and a replace functionality?
Are both behaviors available via PUT api or do we need to support PATCH to gain access to merge?
when a merge (not a replace) of the IntervalReadings collection happens, are alignment boundaries of the IntervalReadings matched b/f replacement?
What happens if the alignment boundaries of the IntervalReadings do not match?
from openespi-common-java.
Any other comments on this merge.vs.replace behavior? If we need both, I can put in a PATCH API.
from openespi-common-java.
You point out well the kind of issues you will have with a PATCH for IntervalBlock. Probably best to stick with PUT as replace. If poster wants a merge, he will know what he wants and do a READ / MODIFY / WRITE pattern.
from openespi-common-java.
The IntervalBlock should be kept manageable in size if the application expects to update interval blocks with any frequency.
from openespi-common-java.
Related Issues (20)
- Add Support for Jacoco Code Test Coverage Reporting
- Add Quality Gate Badge to README file
- Resolve issues causing test methods to fail
- Resolve XMLGregorianCalendarImpl import issue HOT 2
- Clean up code smells reported by Quality Gate report
- Resolve Tomcat Load Issue for UsageSummary HOT 1
- Create usage_summaries Table in DataCustodian and ThirdParty MySQL DBs
- ServiceCategory label translation table contain wrong value for Water Service
- Upgrade to comply with latest NAESB REQ.21 ESPI Energy Usage Information .XSD
- Update Copyright HOT 1
- Refactor MySQL scripts to make application_information id UNIQUE
- Upgrade MySQL to version 8.0
- ExportServiceImpl fails to emit required IntervalBlock rel='related' link for MeterReading
- Update Usage.xsd with missing type=" references
- Refactor mockito.Matchers to use mockito.ArgumentMatchers
- Investigate removing OAuth 2.0 Authorization/Token request processing elements from ESPI Authorization schema
- Refactor atom.xsd to support NAESB REQ.21 ESPI atom type= attribute support
- Refactor OAuth 2.0 Support due to spring-security-oauth reaching EOL
- Refactor layout of ESPI and GBA schemas
- Update Copyright Statement
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from openespi-common-java.