Alexander Volanis created THRIFT-3301:
-----------------------------------------
Summary: Java generated code uses imports and can lead to class
name collisions
Key: THRIFT-3301
URL: https://issues.apache.org/jira/browse/THRIFT-3301
Project: Thrift
Issue Type: Bug
Components: Java - Compiler
Affects Versions: 0.8
Environment: Tested on Linux (Ubuntu 14) with OpenJDK 1.6
Reporter: Alexander Volanis
The Java generator will produce Java classes with the following set of imports
{code}
import org.apache.thrift.scheme.IScheme;
import org.apache.thrift.scheme.SchemeFactory;
import org.apache.thrift.scheme.StandardScheme;
import org.apache.thrift.scheme.TupleScheme;
import org.apache.thrift.protocol.TTupleProtocol;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.util.HashMap;
import java.util.EnumMap;
import java.util.Set;
import java.util.HashSet;
import java.util.EnumSet;
import java.util.Collections;
import java.util.BitSet;
import java.nio.ByteBuffer;
import java.util.Arrays;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
{code}
Any one of the imported classes may cause a name conflict with generated code
that happens to define a same name class and uses such class as argument or
result to methods.
The generated code should always use fully qualified references to the classes
when necessary and avoid all use of imports.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)