Commit Graph

5370 Commits

Author SHA1 Message Date
Mark Struberg a25ad4fc95 OPENJPA-2911 getIdClassConstructorParmOrder in ASM 2023-07-16 17:24:42 +02:00
Mark Struberg 0ab02d6965 OPENJPA-2911 AuxilaryEnhancer in ASM 2023-07-14 12:15:54 +02:00
Mark Struberg fb20da5063 OPENJPA-2911 add clone support in ASM 2023-07-14 11:29:11 +02:00
Mark Struberg 4d505987c3 OPENJPA-2911 addSerialization in ASM 2023-07-13 14:11:14 +02:00
Mark Struberg 62b14584fb OPENJPA-2911 Externalizable in ASM 2023-07-13 11:06:21 +02:00
Mark Struberg 7700fdfd45 OPENJPA-2911 DetachedState as ASM 2023-07-12 11:05:04 +02:00
Mark Struberg d757138669 OPENJPA-2911 remove unused code 2023-07-11 14:52:31 +02:00
Mark Struberg 58db135c5e OPENJPA-2911 isDetached via ASM 2023-07-11 14:50:49 +02:00
Mark Struberg e718fc8b51 OPENJPA-2911 using BCClassWriter
The standard ASM ClassWriter uses Class.forName but does not leverage
our custom ClassLoader which we use to isolate away classes during enhancement.
BCClassWriter extends ClassWriter to use the given ClassLoader.
2023-07-03 18:05:26 +02:00
Mark Struberg 2b9b024f27 OPENJPA-2911 addAccessors in ASM 2023-07-03 11:06:17 +02:00
Mark Struberg 5e89853664 OPENJPA-2911 use ASM static initialiser
solved frame problems by fording java bytecode version 49 on Serp
as Java5 already supports LDC for Classes but doesn't require frame calculation
which Serp is not capable of.
2023-06-26 12:50:03 +02:00
Mark Struberg 4b6a38ec1b OPENJPA-2911 addNewObjectIdInstanceMethod in ASM 2023-06-26 11:37:49 +02:00
Mark Struberg 5d63179b48 OPENJPA-2911 addCopyKeyFieldsFromObjectIdMethod in ASM 2023-06-25 22:17:34 +02:00
Mark Struberg a40b718b03 OPENJPA-2911 addCopyKeyFieldsToObjectIdMethod in ASM 2023-06-25 18:40:21 +02:00
Mark Struberg ae4964cc45 OPENJPA-2911 addGetIDOwningClass in ASM 2023-06-22 12:21:43 +02:00
Mark Struberg 5d781bd6dc OPENJPA-2911 addNoOpApplicationIdentityMethods in ASM 2023-06-22 09:56:40 +02:00
Mark Struberg 9065ae7201 OPENJPA-2911 addReplaceStateManagerMethod in ASM 2023-06-21 19:39:21 +02:00
Mark Struberg 77d8a8e05b OPENJPA-2911 few more internal methods in ASM
* pcGetVersion
* translateFromStateManagerMethod
2023-06-21 15:39:00 +02:00
Mark Struberg 94d1874019 !32852 work on staticInitializer via ASM
sadly we cannot yet activate it as it uses LDC ops for classes
which Serp does not understand as it is pre Java-1.4
2023-06-20 18:00:27 +02:00
Mark Struberg 92bb3b055a OPENJPA-2911 replace Field access via ASM 2023-06-17 21:02:08 +02:00
Mark Struberg a95530b4e6 OPENJPA-2911 attributeTranslation via ASM 2023-06-15 15:37:40 +02:00
Mark Struberg 1a287b267f OPENJPA-2911 fix pcClearFields for mixed access subclassing 2023-06-12 20:20:20 +02:00
Mark Struberg 50bfc57833 OPENJPA-2911 streamline validateProperties 2023-06-10 18:37:02 +02:00
Mark Struberg 810f85ff9f OPENJPA-2911 fix findField 2023-06-10 00:01:42 +02:00
Mark Struberg f0fe08baaa OPENJPA-2911 _pc was missing the Java Version
This die lead to always generating classes only at Java-1.1 bytecode level.
2023-06-09 20:02:21 +02:00
Mark Struberg 3a667fe78a OPENJPA-2911 copyFields via ASM 2023-06-09 20:01:44 +02:00
Mark Struberg d8d829b76b OPENJPA-2911 addProvidedFieldsMethod in ASM 2023-06-08 19:11:23 +02:00
Mark Struberg 03f2d6ae88 OPENJPA-2911 add replace multiple fields in ASM 2023-06-08 14:46:53 +02:00
Mark Struberg cd194bb72e OPENJPA-2911 addReplaceField in ASM
note that this code right now cannot handle subclasses
as we now generate ldc classconstant code which Serp is unable to understand.
The generated bytecode itself should be correct though!
2023-06-08 13:16:23 +02:00
Mark Struberg 6164d355a6 OPENJPA-2911 addManagedFieldCountMethod in ASM 2023-06-06 20:22:11 +02:00
Mark Struberg 972b5d0e62 OPENJPA-2911 migrate addNewInstance to ASM 2023-06-06 17:34:28 +02:00
Mark Struberg 4c7c81d249 OPENJPA-2911 clearFields method via ASM 2023-06-06 12:11:59 +02:00
Mark Struberg 80272a3bf7 OPENJPA-2911 add pcFields via ASM 2023-06-01 17:50:58 +02:00
Mark Struberg f2d27aa15f OPENJPA-2911 move from Serp to ASM 2023-06-01 17:12:16 +02:00
Mark Struberg 032c6fc7fe OPENJPA-2911 Bridge from BCClass <-> ASM ClassNode
This will allow us to smoothly migrate from Serp to ASM
2023-06-01 14:21:05 +02:00
Mark Struberg d13b85b139 OPENJPA-2911 remove Serp from PCSubclassValidator 2023-05-30 12:19:30 +02:00
Mark Struberg 3ea2412003 OPENJPA-2911 move PCSubclassValidator to ASM 2023-05-25 18:07:41 +02:00
Mark Struberg 2c3d37e859 OPENJPA-2911 move PCSubclassValidator to ASM 2023-05-25 11:13:31 +02:00
Mark Struberg 31681982de OPENJPA-2911 move PCSubclassValidator to ASM
work in progress.
For now we compare old and new mechanism to catch errors.
2023-05-24 10:38:44 +02:00
Mark Struberg b51d003ed9 OPENJPA-2911 start migrating away from Serp
This introduces 2 methods to tronsform
Serp BCClass ->  ASM ClassWriter
and
ASM ClassWriter -> Serp BCClass
2023-05-22 15:40:32 +02:00
Mark Struberg b238417dab OPENJPA-2911 make test cover bytecode part 2023-05-16 09:29:21 +02:00
Mark Struberg 972f34d85f upgrade xbean to 4.22 2023-05-16 09:28:09 +02:00
Mark Struberg 39c838a56f OPENJPA-2911 move ApplicationIdTool from Serp to ASM 2023-05-16 08:17:57 +02:00
Mark Struberg f19ba018e2 OPENJPA-2910 get rid of reflection
UOWAction stuff is now also freely available, so no
need for dirty hacks anymore.
2023-05-15 09:58:34 +02:00
Mark Struberg 2ab2746f77 OPENJPA-2910 WASManagedRuntime without Serp
The required interfaces are now publicly available via OpenLiberty artifacts under EPL.
We do not package them, so no NOTICE is required.

I've also removed the test as it did only test that the com.ibm class
is not on the classpath (which it now is for the test run as a provided artifact)
2023-05-15 09:16:07 +02:00
Francesco Chicchiriccò a84728ccb1 Upgrade GH workflows with JDK 11 2023-05-07 08:13:32 +02:00
Mark Struberg 1423932978 OPENJPA-2908 reflekt Jakarta API in our readme 2023-05-06 09:11:58 +02:00
Mark Struberg 0ddc38512d OPENJPA-2908 finish jakarta migration 2023-05-05 17:31:20 +02:00
Mark Struberg 2535a24d55 OPENJPA-2909 fix ClassLoading if proxy cannot be loaded 2023-05-04 21:31:00 +02:00
Mark Struberg ecff638a02 OPENJPA-2909 fix stack calculation
double and long require 2 positions on the stack.
2023-05-04 19:53:11 +02:00