mirror of
https://github.com/mapstruct/mapstruct.git
synced 2025-07-12 00:00:08 +08:00
#644 Add more elaborate test case for inheritance with generics with multiple overlapping interfaces
This commit is contained in:
parent
e4bbfdaaa6
commit
874a9b3a52
@ -0,0 +1,23 @@
|
|||||||
|
/**
|
||||||
|
* Copyright 2012-2015 Gunnar Morling (http://www.gunnarmorling.de/)
|
||||||
|
* and/or other contributors as indicated by the @authors tag. See the
|
||||||
|
* copyright.txt file in the distribution for a full listing of all
|
||||||
|
* contributors.
|
||||||
|
*
|
||||||
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
* you may not use this file except in compliance with the License.
|
||||||
|
* You may obtain a copy of the License at
|
||||||
|
*
|
||||||
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
*
|
||||||
|
* Unless required by applicable law or agreed to in writing, software
|
||||||
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
* See the License for the specific language governing permissions and
|
||||||
|
* limitations under the License.
|
||||||
|
*/
|
||||||
|
package org.mapstruct.ap.test.abstractclass.generics;
|
||||||
|
|
||||||
|
public abstract class AbstractClassExposingItemB
|
||||||
|
implements ItemProviderAny<ItemB>, ItemProviderSomeItemA<ItemA> {
|
||||||
|
}
|
@ -0,0 +1,27 @@
|
|||||||
|
/**
|
||||||
|
* Copyright 2012-2015 Gunnar Morling (http://www.gunnarmorling.de/)
|
||||||
|
* and/or other contributors as indicated by the @authors tag. See the
|
||||||
|
* copyright.txt file in the distribution for a full listing of all
|
||||||
|
* contributors.
|
||||||
|
*
|
||||||
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
* you may not use this file except in compliance with the License.
|
||||||
|
* You may obtain a copy of the License at
|
||||||
|
*
|
||||||
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
*
|
||||||
|
* Unless required by applicable law or agreed to in writing, software
|
||||||
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
* See the License for the specific language governing permissions and
|
||||||
|
* limitations under the License.
|
||||||
|
*/
|
||||||
|
package org.mapstruct.ap.test.abstractclass.generics;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author Andreas Gudian
|
||||||
|
*/
|
||||||
|
public abstract class AbstractClassExposingItemC
|
||||||
|
implements ItemProviderSomeItemA<ItemB>, ItemProviderSomeItemB<ItemC> {
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,56 @@
|
|||||||
|
/**
|
||||||
|
* Copyright 2012-2015 Gunnar Morling (http://www.gunnarmorling.de/)
|
||||||
|
* and/or other contributors as indicated by the @authors tag. See the
|
||||||
|
* copyright.txt file in the distribution for a full listing of all
|
||||||
|
* contributors.
|
||||||
|
*
|
||||||
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
* you may not use this file except in compliance with the License.
|
||||||
|
* You may obtain a copy of the License at
|
||||||
|
*
|
||||||
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
*
|
||||||
|
* Unless required by applicable law or agreed to in writing, software
|
||||||
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
* See the License for the specific language governing permissions and
|
||||||
|
* limitations under the License.
|
||||||
|
*/
|
||||||
|
package org.mapstruct.ap.test.abstractclass.generics;
|
||||||
|
|
||||||
|
import org.mapstruct.Mapper;
|
||||||
|
import org.mapstruct.Mapping;
|
||||||
|
import org.mapstruct.MappingTarget;
|
||||||
|
import org.mapstruct.ReportingPolicy;
|
||||||
|
import org.mapstruct.factory.Mappers;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author Andreas Gudian
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
@Mapper(unmappedTargetPolicy = ReportingPolicy.IGNORE)
|
||||||
|
public abstract class GenericsHierarchyMapper {
|
||||||
|
public static final GenericsHierarchyMapper INSTANCE = Mappers.getMapper( GenericsHierarchyMapper.class );
|
||||||
|
|
||||||
|
@Mapping(target = "itemC", source = "item")
|
||||||
|
public abstract Target toTarget(AbstractClassExposingItemC source);
|
||||||
|
|
||||||
|
@Mapping(target = "itemB", source = "item")
|
||||||
|
public abstract Target toTarget(AbstractClassExposingItemB source);
|
||||||
|
|
||||||
|
@Mapping(target = "item", source = "itemC")
|
||||||
|
public abstract void intoSourceWithItemC(Target target, @MappingTarget AbstractClassExposingItemC bean);
|
||||||
|
|
||||||
|
@Mapping(target = "item", source = "itemB")
|
||||||
|
public abstract void intoSourceWithItemB(Target target, @MappingTarget AbstractClassExposingItemB bean);
|
||||||
|
|
||||||
|
protected ItemC modifyItemC(ItemC item) {
|
||||||
|
item.setTypeParameterIsResolvedToItemC( true );
|
||||||
|
return item;
|
||||||
|
}
|
||||||
|
|
||||||
|
protected ItemB modifyItemB(ItemB item) {
|
||||||
|
item.setTypeParameterIsResolvedToItemB( true );
|
||||||
|
return item;
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,99 @@
|
|||||||
|
/**
|
||||||
|
* Copyright 2012-2015 Gunnar Morling (http://www.gunnarmorling.de/)
|
||||||
|
* and/or other contributors as indicated by the @authors tag. See the
|
||||||
|
* copyright.txt file in the distribution for a full listing of all
|
||||||
|
* contributors.
|
||||||
|
*
|
||||||
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
* you may not use this file except in compliance with the License.
|
||||||
|
* You may obtain a copy of the License at
|
||||||
|
*
|
||||||
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
*
|
||||||
|
* Unless required by applicable law or agreed to in writing, software
|
||||||
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
* See the License for the specific language governing permissions and
|
||||||
|
* limitations under the License.
|
||||||
|
*/
|
||||||
|
package org.mapstruct.ap.test.abstractclass.generics;
|
||||||
|
|
||||||
|
import org.junit.Test;
|
||||||
|
import org.junit.runner.RunWith;
|
||||||
|
import org.mapstruct.ap.testutil.IssueKey;
|
||||||
|
import org.mapstruct.ap.testutil.WithClasses;
|
||||||
|
import org.mapstruct.ap.testutil.runner.AnnotationProcessorTestRunner;
|
||||||
|
|
||||||
|
import static org.fest.assertions.Assertions.assertThat;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author Andreas Gudian
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
@RunWith(AnnotationProcessorTestRunner.class)
|
||||||
|
@IssueKey("644,687,688")
|
||||||
|
@WithClasses({
|
||||||
|
AbstractClassExposingItemC.class,
|
||||||
|
AbstractClassExposingItemB.class,
|
||||||
|
GenericsHierarchyMapper.class,
|
||||||
|
ItemA.class,
|
||||||
|
ItemB.class,
|
||||||
|
ItemC.class,
|
||||||
|
ItemProviderSomeItemA.class,
|
||||||
|
ItemProviderAny.class,
|
||||||
|
ItemProviderSomeItemB.class,
|
||||||
|
Target.class
|
||||||
|
})
|
||||||
|
public class GenericsHierarchyTest {
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void determinesItemCSourceGetter() {
|
||||||
|
AbstractClassExposingItemC source = new SourceWithItemC();
|
||||||
|
|
||||||
|
source.setItem( new ItemC() );
|
||||||
|
// make sure the jdk compiler resolves the same as we expect
|
||||||
|
source.getItem().setTypeParameterIsResolvedToItemC( false );
|
||||||
|
|
||||||
|
Target target = GenericsHierarchyMapper.INSTANCE.toTarget( source );
|
||||||
|
|
||||||
|
assertThat( target.getItemC().typeParameterIsResolvedToItemC() ).isTrue();
|
||||||
|
assertThat( target.getItemC().typeParameterIsResolvedToItemB() ).isFalse();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void determinesItemBSourceGetter() {
|
||||||
|
AbstractClassExposingItemB source = new SourceWithItemB();
|
||||||
|
|
||||||
|
source.setItem( new ItemB() );
|
||||||
|
// make sure the jdk compiler resolves the same as we expect
|
||||||
|
source.getItem().setTypeParameterIsResolvedToItemB( false );
|
||||||
|
|
||||||
|
Target target = GenericsHierarchyMapper.INSTANCE.toTarget( source );
|
||||||
|
|
||||||
|
assertThat( target.getItemB().typeParameterIsResolvedToItemB() ).isTrue();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void determinesItemCSourceSetter() {
|
||||||
|
Target target = new Target();
|
||||||
|
|
||||||
|
target.setItemC( new ItemC() );
|
||||||
|
|
||||||
|
SourceWithItemC source = new SourceWithItemC();
|
||||||
|
GenericsHierarchyMapper.INSTANCE.intoSourceWithItemC( target, source );
|
||||||
|
|
||||||
|
assertThat( source.getItem().typeParameterIsResolvedToItemC() ).isTrue();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void determinesItemBSourceSetter() {
|
||||||
|
Target target = new Target();
|
||||||
|
|
||||||
|
target.setItemB( new ItemB() );
|
||||||
|
|
||||||
|
SourceWithItemB source = new SourceWithItemB();
|
||||||
|
GenericsHierarchyMapper.INSTANCE.intoSourceWithItemB( target, source );
|
||||||
|
|
||||||
|
assertThat( source.getItem().typeParameterIsResolvedToItemB() ).isTrue();
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,27 @@
|
|||||||
|
/**
|
||||||
|
* Copyright 2012-2015 Gunnar Morling (http://www.gunnarmorling.de/)
|
||||||
|
* and/or other contributors as indicated by the @authors tag. See the
|
||||||
|
* copyright.txt file in the distribution for a full listing of all
|
||||||
|
* contributors.
|
||||||
|
*
|
||||||
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
* you may not use this file except in compliance with the License.
|
||||||
|
* You may obtain a copy of the License at
|
||||||
|
*
|
||||||
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
*
|
||||||
|
* Unless required by applicable law or agreed to in writing, software
|
||||||
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
* See the License for the specific language governing permissions and
|
||||||
|
* limitations under the License.
|
||||||
|
*/
|
||||||
|
package org.mapstruct.ap.test.abstractclass.generics;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author Andreas Gudian
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
public class ItemA {
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,35 @@
|
|||||||
|
/**
|
||||||
|
* Copyright 2012-2015 Gunnar Morling (http://www.gunnarmorling.de/)
|
||||||
|
* and/or other contributors as indicated by the @authors tag. See the
|
||||||
|
* copyright.txt file in the distribution for a full listing of all
|
||||||
|
* contributors.
|
||||||
|
*
|
||||||
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
* you may not use this file except in compliance with the License.
|
||||||
|
* You may obtain a copy of the License at
|
||||||
|
*
|
||||||
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
*
|
||||||
|
* Unless required by applicable law or agreed to in writing, software
|
||||||
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
* See the License for the specific language governing permissions and
|
||||||
|
* limitations under the License.
|
||||||
|
*/
|
||||||
|
package org.mapstruct.ap.test.abstractclass.generics;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author Andreas Gudian
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
public class ItemB extends ItemA {
|
||||||
|
private boolean typeParameterIsResolvedToItemB;
|
||||||
|
|
||||||
|
public boolean typeParameterIsResolvedToItemB() {
|
||||||
|
return typeParameterIsResolvedToItemB;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setTypeParameterIsResolvedToItemB(boolean typeParameterIsResolvedToItemB) {
|
||||||
|
this.typeParameterIsResolvedToItemB = typeParameterIsResolvedToItemB;
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,35 @@
|
|||||||
|
/**
|
||||||
|
* Copyright 2012-2015 Gunnar Morling (http://www.gunnarmorling.de/)
|
||||||
|
* and/or other contributors as indicated by the @authors tag. See the
|
||||||
|
* copyright.txt file in the distribution for a full listing of all
|
||||||
|
* contributors.
|
||||||
|
*
|
||||||
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
* you may not use this file except in compliance with the License.
|
||||||
|
* You may obtain a copy of the License at
|
||||||
|
*
|
||||||
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
*
|
||||||
|
* Unless required by applicable law or agreed to in writing, software
|
||||||
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
* See the License for the specific language governing permissions and
|
||||||
|
* limitations under the License.
|
||||||
|
*/
|
||||||
|
package org.mapstruct.ap.test.abstractclass.generics;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author Andreas Gudian
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
public class ItemC extends ItemB {
|
||||||
|
private boolean typeParameterIsResolvedToItemC;
|
||||||
|
|
||||||
|
public boolean typeParameterIsResolvedToItemC() {
|
||||||
|
return typeParameterIsResolvedToItemC;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setTypeParameterIsResolvedToItemC(boolean typeParameterIsResolvedToItemC) {
|
||||||
|
this.typeParameterIsResolvedToItemC = typeParameterIsResolvedToItemC;
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,28 @@
|
|||||||
|
/**
|
||||||
|
* Copyright 2012-2015 Gunnar Morling (http://www.gunnarmorling.de/)
|
||||||
|
* and/or other contributors as indicated by the @authors tag. See the
|
||||||
|
* copyright.txt file in the distribution for a full listing of all
|
||||||
|
* contributors.
|
||||||
|
*
|
||||||
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
* you may not use this file except in compliance with the License.
|
||||||
|
* You may obtain a copy of the License at
|
||||||
|
*
|
||||||
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
*
|
||||||
|
* Unless required by applicable law or agreed to in writing, software
|
||||||
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
* See the License for the specific language governing permissions and
|
||||||
|
* limitations under the License.
|
||||||
|
*/
|
||||||
|
package org.mapstruct.ap.test.abstractclass.generics;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author Andreas Gudian
|
||||||
|
*/
|
||||||
|
public interface ItemProviderAny<X> {
|
||||||
|
X getItem();
|
||||||
|
|
||||||
|
void setItem(X id);
|
||||||
|
}
|
@ -0,0 +1,26 @@
|
|||||||
|
/**
|
||||||
|
* Copyright 2012-2015 Gunnar Morling (http://www.gunnarmorling.de/)
|
||||||
|
* and/or other contributors as indicated by the @authors tag. See the
|
||||||
|
* copyright.txt file in the distribution for a full listing of all
|
||||||
|
* contributors.
|
||||||
|
*
|
||||||
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
* you may not use this file except in compliance with the License.
|
||||||
|
* You may obtain a copy of the License at
|
||||||
|
*
|
||||||
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
*
|
||||||
|
* Unless required by applicable law or agreed to in writing, software
|
||||||
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
* See the License for the specific language governing permissions and
|
||||||
|
* limitations under the License.
|
||||||
|
*/
|
||||||
|
package org.mapstruct.ap.test.abstractclass.generics;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author Andreas Gudian
|
||||||
|
*/
|
||||||
|
public interface ItemProviderSomeItemA<T extends ItemA> {
|
||||||
|
T getItem();
|
||||||
|
}
|
@ -0,0 +1,29 @@
|
|||||||
|
/**
|
||||||
|
* Copyright 2012-2015 Gunnar Morling (http://www.gunnarmorling.de/)
|
||||||
|
* and/or other contributors as indicated by the @authors tag. See the
|
||||||
|
* copyright.txt file in the distribution for a full listing of all
|
||||||
|
* contributors.
|
||||||
|
*
|
||||||
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
* you may not use this file except in compliance with the License.
|
||||||
|
* You may obtain a copy of the License at
|
||||||
|
*
|
||||||
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
*
|
||||||
|
* Unless required by applicable law or agreed to in writing, software
|
||||||
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
* See the License for the specific language governing permissions and
|
||||||
|
* limitations under the License.
|
||||||
|
*/
|
||||||
|
package org.mapstruct.ap.test.abstractclass.generics;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author Andreas Gudian
|
||||||
|
*/
|
||||||
|
public interface ItemProviderSomeItemB<ID extends ItemB> extends ItemProviderSomeItemA<ItemB> {
|
||||||
|
@Override
|
||||||
|
ID getItem();
|
||||||
|
|
||||||
|
void setItem(ID item);
|
||||||
|
}
|
@ -0,0 +1,35 @@
|
|||||||
|
/**
|
||||||
|
* Copyright 2012-2015 Gunnar Morling (http://www.gunnarmorling.de/)
|
||||||
|
* and/or other contributors as indicated by the @authors tag. See the
|
||||||
|
* copyright.txt file in the distribution for a full listing of all
|
||||||
|
* contributors.
|
||||||
|
*
|
||||||
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
* you may not use this file except in compliance with the License.
|
||||||
|
* You may obtain a copy of the License at
|
||||||
|
*
|
||||||
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
*
|
||||||
|
* Unless required by applicable law or agreed to in writing, software
|
||||||
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
* See the License for the specific language governing permissions and
|
||||||
|
* limitations under the License.
|
||||||
|
*/
|
||||||
|
package org.mapstruct.ap.test.abstractclass.generics;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author Andreas Gudian
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
public class SourceWithItemB extends AbstractClassExposingItemB {
|
||||||
|
private ItemB item;
|
||||||
|
|
||||||
|
public ItemB getItem() {
|
||||||
|
return item;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setItem(ItemB item) {
|
||||||
|
this.item = item;
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,37 @@
|
|||||||
|
/**
|
||||||
|
* Copyright 2012-2015 Gunnar Morling (http://www.gunnarmorling.de/)
|
||||||
|
* and/or other contributors as indicated by the @authors tag. See the
|
||||||
|
* copyright.txt file in the distribution for a full listing of all
|
||||||
|
* contributors.
|
||||||
|
*
|
||||||
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
* you may not use this file except in compliance with the License.
|
||||||
|
* You may obtain a copy of the License at
|
||||||
|
*
|
||||||
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
*
|
||||||
|
* Unless required by applicable law or agreed to in writing, software
|
||||||
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
* See the License for the specific language governing permissions and
|
||||||
|
* limitations under the License.
|
||||||
|
*/
|
||||||
|
package org.mapstruct.ap.test.abstractclass.generics;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author Andreas Gudian
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
public class SourceWithItemC extends AbstractClassExposingItemC {
|
||||||
|
private ItemC item;
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public ItemC getItem() {
|
||||||
|
return item;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void setItem(ItemC item) {
|
||||||
|
this.item = item;
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,45 @@
|
|||||||
|
/**
|
||||||
|
* Copyright 2012-2015 Gunnar Morling (http://www.gunnarmorling.de/)
|
||||||
|
* and/or other contributors as indicated by the @authors tag. See the
|
||||||
|
* copyright.txt file in the distribution for a full listing of all
|
||||||
|
* contributors.
|
||||||
|
*
|
||||||
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
* you may not use this file except in compliance with the License.
|
||||||
|
* You may obtain a copy of the License at
|
||||||
|
*
|
||||||
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
*
|
||||||
|
* Unless required by applicable law or agreed to in writing, software
|
||||||
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
* See the License for the specific language governing permissions and
|
||||||
|
* limitations under the License.
|
||||||
|
*/
|
||||||
|
package org.mapstruct.ap.test.abstractclass.generics;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author Andreas Gudian
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
public class Target {
|
||||||
|
private ItemC itemC;
|
||||||
|
private ItemB itemB;
|
||||||
|
|
||||||
|
public ItemC getItemC() {
|
||||||
|
return itemC;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setItemC(ItemC itemC) {
|
||||||
|
this.itemC = itemC;
|
||||||
|
}
|
||||||
|
|
||||||
|
public ItemB getItemB() {
|
||||||
|
return itemB;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setItemB(ItemB itemB) {
|
||||||
|
this.itemB = itemB;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@ -55,8 +55,8 @@ class EclipseCompilingStatement extends CompilingStatement {
|
|||||||
config.setAnnotationProcessors( new String[] { MappingProcessor.class.getName() } );
|
config.setAnnotationProcessors( new String[] { MappingProcessor.class.getName() } );
|
||||||
config.setSourceFiles( getSourceFiles( compilationRequest.getSourceClasses() ) );
|
config.setSourceFiles( getSourceFiles( compilationRequest.getSourceClasses() ) );
|
||||||
config.setShowWarnings( false );
|
config.setShowWarnings( false );
|
||||||
config.setSourceVersion( "1.6" );
|
config.setSourceVersion( "1.8" );
|
||||||
config.setTargetVersion( "1.6" );
|
config.setTargetVersion( "1.8" );
|
||||||
|
|
||||||
for ( String option : compilationRequest.getProcessorOptions() ) {
|
for ( String option : compilationRequest.getProcessorOptions() ) {
|
||||||
config.addCompilerCustomArgument( option, null );
|
config.addCompilerCustomArgument( option, null );
|
||||||
|
Loading…
x
Reference in New Issue
Block a user