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)

Reply via email to