1061 Commits

Author SHA1 Message Date
Filip Hrisafov
6d5243dc2f #1551 Use javax.annotation.processing.Generated if it is available and source version is at least RELEASE_9 2018-10-13 19:07:24 +02:00
Filip Hrisafov
0e0fd313e5 #1594 Add test case to show that it has been fixed 2018-10-13 10:27:49 +02:00
Filip Hrisafov
f17ddcfb18 #1608 Make sure that property names for fluent setters starting with is are handled properly (#1620) 2018-10-13 07:54:09 +01:00
neoXfire
6b3cbaae9e #1595 Support for conversion between java.time.Instant and java.util.Date (#1622) 2018-10-12 20:10:25 +01:00
Sjaak Derksen
459f57e805
#1571 apply nullvaluecheck strategy on all relevant levels 2018-09-24 23:35:35 +02:00
Sebastian
30c2dadec7 #1561 add support for adders in combination with streams
- Extended Type#getAlternativeTargetAccessors to recognize stream read
  accessors for which no corresponding setter exists
  (there is only an add method)
- Extended SourceRHS#getSourceTypeForMatching to return the
  correct source type for streams too
- Add StreamAdderWrapper to map Stream -> Adder
- Extended PropertyMapping$PropertyMappingBuilder#assignToPlainViaAdder
  to return StreamAdderWrapper if source type is stream
2018-09-24 22:23:34 +02:00
Sjaak Derksen
5a4990c474
#1456 apply source presence tracking recursively (in nested source) 2018-09-22 14:06:53 +02:00
Sjaak Derksen
13aa947421
#1569 Reproducer missing Immubable buildertype import (#1605) 2018-09-12 16:26:09 +02:00
Sjaak Derksen
3da85bc178
#1596 Missing builder type import (#1602) 2018-09-02 22:19:21 +02:00
Sjaak Derksen
bd2c206f7f
#1590 ArrayList missing as import for NVMS.RETURN_DEFAULT (#1598) 2018-08-29 21:11:22 +02:00
Filip Hrisafov
ded8d88c73
#1578 Rename isBuilderSetter to isFluentSetter in the DefaultAccessorNamingStrategy 2018-08-18 21:58:22 +02:00
Filip Hrisafov
04576de1d1
#1552 Stop processing source parameters for unprocessed defined properties when a mapping is found 2018-08-18 19:58:02 +02:00
Sjaak Derksen
10f855fa9e
#1532 using fields and constructor fragments optimizing DataTypeFactory usage 2018-08-14 23:53:41 +02:00
Sjaak Derksen
5c2e049478
#1558 Annotations ElementType.TYPE_USE not handled correctly 2018-08-14 06:56:59 +02:00
Filip Hrisafov
e056311c1a
#1569 Make sure that converting Java 8 LocalDate to Date generates correct code
* ZoneOffset instead of ZoneId needs to be imported when performing a conversion from LocalDate to Date
2018-08-13 21:21:04 +02:00
Saheb Preet Singh
08067b7f17 #1524 replaced java.beans.Introspector with a custom IntrospectorUtils class to avoid java.desktop module 2018-08-11 22:19:21 +02:00
Christian Bandowski
6b89539ff6 #1541 Fix NPE when using varargs in mapping methods 2018-07-24 18:19:42 +02:00
Filip Hrisafov
e29c25e5cb [maven-release-plugin] prepare for next development iteration 2018-07-15 19:51:45 +02:00
Filip Hrisafov
c189aa7bb5 [maven-release-plugin] prepare release 1.3.0.Beta1 2018-07-15 19:51:44 +02:00
Filip Hrisafov
12bfff8f46 #1411 Fix expected line in Diagnostic after reducing the test files copyright headers 2018-07-15 19:29:28 +02:00
MapStruct Team
b35126e609 #1411 Update copyright header on all files
* Use new shorter copyright header without a year
* Use SLASHSTAR_STYLE for Java files
2018-07-15 19:29:28 +02:00
Sjaak Derksen
58a2aa94bb
#1482 allowing generic self references in types when matching 2018-07-14 16:27:10 +02:00
Filip Hrisafov
ef270caecb
#1479 Add support for Builders with multiple build methods (#1498)
* Add new @Builder annotation for defining a build method
* When there are multiple build methods look for a method named `build` and if found use it
* If @Builder is defined than look for a build method with the defined method
* When a type has multiple builder creation methods throw an exception and don't use the builder

Defaulting to a method named `build` will make sure that a correct method is selected for:
* FreeBuilder - it has two methods: `build` and `buildPartial`
* Protobuf - it has three methods: `getDefaultInstanceForType`, `build` and `buildPartial`
2018-07-12 23:16:53 +02:00
tomoya-yokota
fc5f937a71 Fix Method name typo 2018-07-01 23:24:01 +02:00
Christian Bandowski
508de6733e #1523 dont lose timezone mapping Calendar to XMLGregorianCalendar 2018-06-21 22:32:36 +02:00
sjaakd
e67c849c17 #1398 allowing @ObjectFactory methods on context 2018-05-24 20:28:14 +02:00
Christian Bandowski
db851701ef #1454 add more tests for builder lifecycle methods 2018-05-17 21:39:38 +02:00
Christian Bandowski
eeddc17de4 #537 add unit test 2018-05-09 22:28:16 +02:00
sjaakd
6fbc4cf253 #1180 non existing (nested) property in shared config 2018-05-08 23:18:18 +02:00
Filip Hrisafov
771debee88
#1453 Make sure that we always forge iterable / map mapping methods without bounds
When generating collection / map mapping methods make sure that the method result type is without bounds
2018-05-06 22:03:16 +02:00
sjaakd
45cc87849b #1458 reporting error detail from literal assignment 2018-05-05 22:56:00 +02:00
Christian Bandowski
b291907918 #1460 Ensures the FQN will be used for SimpleConversion if required
* Added getReferenceName() to Type which returns simple or fully-qualified-name
* Use getReferenceName() in all SimpleConversions
* Added testcase that is not working without these changes
* Added ConversionUtils with a lot of helper methods to create the "reference names" used in SimpleConversions
2018-05-05 20:42:37 +02:00
Filip Hrisafov
bf31ec72de
#1338 Using an adder with non generic source collection should work 2018-05-04 08:09:37 +02:00
Filip Hrisafov
7a3f6d973e
#1473 Make sure that the SPIs are lazy initialized in the AnnotationProcessorContext 2018-05-03 23:15:23 +02:00
Filip Hrisafov
b6905d5168 Make sure we have a conflicting test with adder 2018-05-03 21:51:37 +02:00
Filip Hrisafov
84bf019fdf More detailed check for adder in builde 2018-05-03 21:51:37 +02:00
Filip Hrisafov
adde6826a6 #1449 Adders should not be considered as builder setter methods 2018-05-03 21:51:37 +02:00
Filip Hrisafov
7306c52529 #1415 Use Immutables AccesorNamingStrategy and BuilderProvider when immutables are present
This allows out of the box support for Immutables by picking the right default strategy when immutables are present
2018-05-01 18:26:34 +02:00
Filip Hrisafov
8a24706026 Extract methods that use the AccessorNamingStrategy into class instance methods
This helps towards #1415, where we need to use strategy based on presence / absence of Immutables
2018-05-01 18:26:34 +02:00
sjaakd
d92b439a60 #1462 define constants as JLS literal types, enforce long L suffix 2018-04-29 09:12:49 +02:00
Filip Hrisafov
5c799b73ef
#1452 support BeanMapping#ignoreByDefault for builders 2018-04-28 10:17:52 +02:00
Filip Hrisafov
cf19a6b637
#1423 Updating types that have a builder should be allowed
It is possible that a type has both a builder and accessors.
In such case doing an update to this type should be allowed
2018-04-28 09:09:44 +02:00
Filip Hrisafov
7e7fcfbb94
#1317 Add support for ignoring unmapped source properties
This property has only effect on the unmapped source properties report
2018-04-25 20:45:02 +02:00
sjaakd
35f5400e00 #1401 improvements by direct assigning constants 2018-04-25 20:25:11 +02:00
Filip Hrisafov
2fe7f6be2b
#1387 Improve error message when unknown source parameter is used in Mapping 2018-04-24 21:39:28 +02:00
Filip Hrisafov
4a05c8d5f1
#1433 Support for lifecycle methods for builders
When doing mappings with builder the effective type should be considered for lifecycle callback methods
2018-04-24 21:36:48 +02:00
Christian Bandowski
5540efc482 #1425 Added findType to VirtualMappingMethod and use it in all builtin templates
Together with the includeModel directive this will ensure that the type will be written to the file as a FQN if required, otherwise as a simple name.
2018-04-21 18:59:29 +02:00
sjaakd
4f5db83de7 #1392 add option to default ignoreAll mappings in a bean mapping method 2018-04-21 09:07:13 +02:00
Filip Hrisafov
5834368b15
#1431 Factory method resolution should be done on the effective type
This allows using factories for builder types as well
2018-04-15 10:19:58 +02:00
dvfeinblum
075d2c4113 #1383 Invalid @Mapping values should be reported on the @Mapping annotation 2018-04-15 08:33:00 +02:00