Issue Details (XML | Word | Printable)

Key: NUCCORE-1229
Type: Task Task
Status: Closed Closed
Resolution: Fixed
Priority: Major Major
Assignee: Unassigned
Reporter: Andy Jefferson
Votes: 0
Watchers: 0
Operations

If you were logged in you would be able to see more operations.
DataNucleus Core

Add ExecutionContextReference interface, and use it in bytecode enhancement contract

Created: 15/Jun/14 09:53 AM   Updated: Tuesday 07:57 PM   Resolved: 15/Nov/14 12:28 PM
Component/s: Code Structure, Enhancer
Affects Version/s: None
Fix Version/s: 4.1.0.m1


 Description  « Hide
This would potentially allow us to provide a "datanucleus-enhancement" mini-jar providing just the necessary classes in the enhancement contract. Would need to cast the dnGetExecutionContext result to the right class where required.

Some refactorings needed to isolate the enhancement contract into its own package (so potentially separable in the future) :-
org.datanucleus.enhancer.Persistable -> org.datanucleus.enhancement.Persistable
org.datanucleus.state.StateManager -> org.datanucleus.enhancement.StateManager

This will impact on api.jdo, api.jpa, api.rest, and store.neodatis

Andy Jefferson made changes - 27/Jun/14 12:03 PM
Field Original Value New Value
Fix Version/s 4.1.0.release [ 12224 ]
Andy Jefferson made changes - 15/Nov/14 09:41 AM
Fix Version/s 4.1.0.m1 [ 12307 ]
Fix Version/s 4.1.0.release [ 12224 ]
Description This would potentially allow us to provide a "datanucleus-enhancement" mini-jar providing just the necessary classes in the enhancement contract. Would need to cast the dnGetExecutionContext result to the right class where required. This would potentially allow us to provide a "datanucleus-enhancement" mini-jar providing just the necessary classes in the enhancement contract. Would need to cast the dnGetExecutionContext result to the right class where required.

Some refactorings needed to isolate the enhancement contract into its own package (so potentially separable in the future) :-
org.datanucleus.enhancer.Persistable -> org.datanucleus.enhancement.Persistable
org.datanucleus.state.StateManager -> org.datanucleus.enhancement.StateManager

This will impact on api.jdo, api.jpa, api.rest, and store.neodatis
Andy Jefferson added a comment - 15/Nov/14 12:28 PM
GitHub master has this now. All classes in org.datanucleus.enhancement have no imports, hence have no dependency on anything external, and consequently enhanced classes could be used with a simple jar of just this package should someone want to do that

Andy Jefferson made changes - 15/Nov/14 12:28 PM
Status Open [ 1 ] Resolved [ 5 ]
Resolution Fixed [ 1 ]
Andy Jefferson made changes - 18/Nov/14 07:57 PM
Status Resolved [ 5 ] Closed [ 6 ]