Commit Graph

1422 Commits

Author SHA1 Message Date
David Reiss
3fa89e33f3 THRIFT-209. csharp: Make TTransportFactory.GetTransport virtual
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@739641 13f79535-47bb-0310-9956-ffa450edef68
2009-01-31 22:12:34 +00:00
David Reiss
f78ec2bc66 THRIFT-195. python: Add a simple THttpServer
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@739638 13f79535-47bb-0310-9956-ffa450edef68
2009-01-31 21:59:32 +00:00
David Reiss
1fe17774eb python: Add TFileObjectTransport
TFileObjectTransport is a Thrift transport that wraps a
Python-style file-like object.  This is necessary to add
methods like isOpen and readAll.


git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@739637 13f79535-47bb-0310-9956-ffa450edef68
2009-01-31 21:59:27 +00:00
David Reiss
4c591c95a5 THRIFT-212. python: Make TFramedTransport implement CReadableTransport
This involved adding a few methods to provide lower-level access to the
internal read buffer.  This will allow us to use TBinaryProtocolAccelerated
with TFramedTransport.


git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@739632 13f79535-47bb-0310-9956-ffa450edef68
2009-01-31 21:39:25 +00:00
David Reiss
647d30d218 python: Make TFramedTransport use a cStringIO for reading
Tested by running a client against a framed-transport server.


git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@739631 13f79535-47bb-0310-9956-ffa450edef68
2009-01-31 21:39:20 +00:00
David Reiss
fb695b77d3 python: Eliminate the option of TFramedTransport to not frame
We've done this in a few other languages.  All the tests still pass.


git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@739630 13f79535-47bb-0310-9956-ffa450edef68
2009-01-31 21:39:16 +00:00
David Reiss
9813cbeda6 cpp: Make the test server compatible with the Python test client
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@739629 13f79535-47bb-0310-9956-ffa450edef68
2009-01-31 21:39:11 +00:00
David Reiss
3166141fbd python: Make the unit tests run faster and more reliably
- The async test was making the server sleep for 2 seconds.  Cut it to 0.5.
- The test driver was waiting 5 seconds for shutdown.  Cut it to 1.
- Add a 0.25 second sleep to make sure the server comes up before the client.

This is all a bit hacky, but it is better than the status quo.


git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@739628 13f79535-47bb-0310-9956-ffa450edef68
2009-01-31 21:39:08 +00:00
Greg Stein
ca823297fa THRIFT-295: remove empty directories.
These directories have no files in them. Toss 'em from version control.


git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@739501 13f79535-47bb-0310-9956-ffa450edef68
2009-01-31 03:54:03 +00:00
Greg Stein
c1eb2a71c3 THRIFT-292
Delete a number of generated artifacts. The build system should produce
these, rather than having them stored in version control.

* contrib/fb303/py/fb303/...: remove generated Python bindings

* contrib/fb303/java/FacebookService.java:
* contrib/fb303/java/fb_status.java:
* contrib/fb303/java/Constants.java:
  - remove generated Java bindings


git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@739384 13f79535-47bb-0310-9956-ffa450edef68
2009-01-30 19:19:45 +00:00
Greg Stein
f0d35d220a THRIFT-291
* README: tweak for Thrift's new home at Apache.


git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@739380 13f79535-47bb-0310-9956-ffa450edef68
2009-01-30 19:10:27 +00:00
David Reiss
8341344b86 Add a few new generated directories to .gitignore
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@739089 13f79535-47bb-0310-9956-ffa450edef68
2009-01-29 23:54:41 +00:00
Bryan Duxbury
b96d5288e8 Accidentally svn:ignored Makefile*, getting rid of Makefile.am changes
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@739087 13f79535-47bb-0310-9956-ffa450edef68
2009-01-29 23:53:34 +00:00
David Reiss
c04452eff2 THRIFT-289. cpp: Fix "make check" by defining a comparator for "Instanity"
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@739083 13f79535-47bb-0310-9956-ffa450edef68
2009-01-29 23:46:46 +00:00
Bryan Duxbury
796381d857 THRIFT-290. java: Metadata map doesn't properly reference external thrift file's types
The code generator now uses full namespaces to refer to the classes.

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@739045 13f79535-47bb-0310-9956-ffa450edef68
2009-01-29 22:13:56 +00:00
Bryan Duxbury
50119f15aa THRIFT-289. test: "make check" no longer runs the Java tests
Thanks to David for the changes that straighten the makefiles out.



git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@739024 13f79535-47bb-0310-9956-ffa450edef68
2009-01-29 21:31:25 +00:00
Bryan Duxbury
9f427ee0e1 THRIFT-288. java: Generated code iterates maps during write inefficiently
Newly generated code will now use entrySet instead of keySet when serializing maps. Existing generated classes does not need to be regenerated, though they won't reap the performance improvements unless they do.

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@738765 13f79535-47bb-0310-9956-ffa450edef68
2009-01-29 05:47:21 +00:00
Bryan Duxbury
1f6302fab0 THRIFT-218. java: When validation fails on serialization/deserialization, print out the invalid object
The error thrown when validation fails now contains the toString output.

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@738764 13f79535-47bb-0310-9956-ffa450edef68
2009-01-29 05:38:10 +00:00
Bryan Duxbury
986d705578 THRIFT-253. java: Enhance FieldMetaData
The code generator new creates a static map of field id to metadata for each field, including information like the field TType, class of embedded structs, required/optional/default, etc. Additionally, on loading, generated classes statically register their class and metadata map with the global FieldMetaData map, so you can get the metadata for any TBase-implementing class easily.

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@738708 13f79535-47bb-0310-9956-ffa450edef68
2009-01-29 01:51:08 +00:00
Bryan Duxbury
9a75aa5192 undoing an unintentional commit to ax_java.m4
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@738704 13f79535-47bb-0310-9956-ffa450edef68
2009-01-29 01:37:01 +00:00
Bryan Duxbury
249d7cb199 THRIFT-166. java: Java tests should be in lib/java/test/
THRIFT-221. java: Make java build classpath more dynamic and configurable

This issue moves all the tests from test/java to lib/java/test/src and combines the build files. In addition, rather than continue on with the same busted approach to finding dependent jars for the tests, THRIFT-221 has been implemented, allowing the user to specify a .thrift-build.properties file in their home directory that contains additional classpath entries. 

As a result of this patch, "make check" does not currently work as it is expected to. This will be resolved in a follow-up commit.

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@738695 13f79535-47bb-0310-9956-ffa450edef68
2009-01-29 01:21:20 +00:00
Bryan Duxbury
369417a5f1 THRIFT-239. java: Generate @Override annotations for all overrided methods
equals, toString, clone, and hashcode now all have a preceeding @Override annotation.



git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@738270 13f79535-47bb-0310-9956-ffa450edef68
2009-01-27 22:09:33 +00:00
David Reiss
8bb593e69a THRIFT-284. python: Update tutorial files to use repr
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@737424 13f79535-47bb-0310-9956-ffa450edef68
2009-01-24 19:37:41 +00:00
Bryan Duxbury
4371038cd1 THRIFT-240. java: TBase should implement Cloneable
The TBase interface now extends Cloneable.



git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@736691 13f79535-47bb-0310-9956-ffa450edef68
2009-01-22 16:27:16 +00:00
Bryan Duxbury
8bbd8447b9 THRIFT-223 Validate method should check that enum types are assigned valid values
Enum classes now get a VALID_VALUES Set that contains all of the acceptable values. Structs' validate() method has been extended to compare an enum field's value to the valid value set, but only if the __isset flag for that field is true, meaning that non-beans generated code will not perform this validity check unless the __isset flag is manually maintained.

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@735910 13f79535-47bb-0310-9956-ffa450edef68
2009-01-20 01:54:14 +00:00
Bryan Duxbury
46b77c4be6 THRIFT-224 Validate method should check that enum types are assigned valid values
Each generated enumeration type will now have a VALID_VALUES Set as a static member that contains all the values of the enumeration.

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@735167 13f79535-47bb-0310-9956-ffa450edef68
2009-01-16 22:34:40 +00:00
T Jake Luciani
9c983c2db0 THRIFT-271: allows build to locate libevent on osx
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@734878 13f79535-47bb-0310-9956-ffa450edef68
2009-01-16 01:04:27 +00:00
David Reiss
4c266ccc2c THRIFT-244. cpp: Make TJSONProtocolFactor inherit from TProtocolFactory
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@734863 13f79535-47bb-0310-9956-ffa450edef68
2009-01-15 23:56:24 +00:00
David Reiss
6713e1b126 THRIFT-244. cpp: Fix TJSONProtocol::writeMessageBegin
uint8_t is a character type, so lexical_cast doesn't convert it
to an integer representation.


git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@734862 13f79535-47bb-0310-9956-ffa450edef68
2009-01-15 23:56:19 +00:00
Bryan Duxbury
afa80ea73d THRIFT-34 Java libraries should be namespaced under org.apache.thrift, not com.facebook.thrift
Library classes and tests have been moved to the proper package and directory structure, and references to com.facebook.thrift where replaced with org.apache.thrift throughout the code. The fb303 contrib project still contains com.facebook packages.



git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@734855 13f79535-47bb-0310-9956-ffa450edef68
2009-01-15 23:47:51 +00:00
Kevin Clark
c85fd50e2b THRIFT-216. Add validate method to fixtures so tests pass
Author: Esteve Fernandez


git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@734565 13f79535-47bb-0310-9956-ffa450edef68
2009-01-14 23:55:10 +00:00
David Reiss
46bb4aeb5e THRIFT-242. python: Used named arguments in __init__ instead of a dict
This is a wire-compatible but non-source-compatible change.
When initializing structures, you must use

Foo(bar=1, baz="qux")
Foo(**{"bar": 1, "baz": "qux"})

instead of

Foo({"bar": 1, "baz": "qux"})


git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@734536 13f79535-47bb-0310-9956-ffa450edef68
2009-01-14 22:34:15 +00:00
David Reiss
7bcf866c16 THRIFT-249. java: Add @param lines to function docstrings
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@732116 13f79535-47bb-0310-9956-ffa450edef68
2009-01-06 20:54:27 +00:00
David Reiss
c654416843 THRIFT-129. csharp: Make all Thrift structures extend TBase
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@732081 13f79535-47bb-0310-9956-ffa450edef68
2009-01-06 19:49:33 +00:00
David Reiss
b0f31ef92f THRIFT-46. csharp: Throw the correct exception for an unknown method
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@732080 13f79535-47bb-0310-9956-ffa450edef68
2009-01-06 19:49:29 +00:00
David Reiss
6319133cac THRIFT-25. csharp: Various compiler and library improvements
Compiler:
- Thrift structures are serializable.
- The member fields of thrift structures are now private and only accessible
  through Properties, which keep the appropriate __isset up to date.

Library
- Addition of TBufferedTransport, which can be used to wrap other Transports.
- Addition of TThreadedServer, which manually manages threads instead of
  relying on .NET ThreadPool.
- Servers use a log delegate that defaults to System.Console but allows
  servers to use log4net without introducing the dependency.

ThriftTest Visual Studio Project
- Test client and server that use ThriftTest.thrift. The project references
  thrift.exe and Thrift.dll from the subversion tree and automatically builds
  generated code. This makes it very easy to test changes in both the compiler
  and library.


git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@732079 13f79535-47bb-0310-9956-ffa450edef68
2009-01-06 19:49:22 +00:00
Kevin Clark
d6b7182df5 THRIFT-246. rb: Generate #struct_fields rather than reflect.
Author: Bryan Duxbury


git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@731806 13f79535-47bb-0310-9956-ffa450edef68
2009-01-06 01:34:28 +00:00
Kevin Clark
41baeaba96 THRIFT-157. rb: Quote strings and qualify class names properly
Author: Dave Engberg


git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@731763 13f79535-47bb-0310-9956-ffa450edef68
2009-01-05 23:10:17 +00:00
Kevin Clark
bcb4cf83e5 THRFIT-231. rb: Make Thrift::Structs hashable
Author: Bryan Duxbury


git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@731760 13f79535-47bb-0310-9956-ffa450edef68
2009-01-05 23:00:22 +00:00
David Reiss
8eaebfedc1 THRIFT-235. java: Explicitly cast integer constants to double
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@731723 13f79535-47bb-0310-9956-ffa450edef68
2009-01-05 21:03:01 +00:00
David Reiss
25be92bf0d THRIFT-222. java: Better exposure if __isset in beans style
- Generate an isSet method for each field to test its set-ness.
- Generate a generic isSet method that checks by field id.


git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@731722 13f79535-47bb-0310-9956-ffa450edef68
2009-01-05 21:02:58 +00:00
David Reiss
2db737df8f java: Add a helper function to implement nocamel style
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@731721 13f79535-47bb-0310-9956-ffa450edef68
2009-01-05 21:02:55 +00:00
David Reiss
b936ffdbd1 THRIFT-191. java: Create a static field id -> name map for each struct
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@731720 13f79535-47bb-0310-9956-ffa450edef68
2009-01-05 21:02:52 +00:00
David Reiss
5455f00348 THRIFT-138. java: Fix copy constructor for binary fields
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@731719 13f79535-47bb-0310-9956-ffa450edef68
2009-01-05 21:02:48 +00:00
David Reiss
888f88b05d THRIFT-241. python: Generate a better implementation of __repr__
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@731685 13f79535-47bb-0310-9956-ffa450edef68
2009-01-05 20:14:52 +00:00
T Jake Luciani
41687fc6cf THRIFT-193: Patch for proper namespace support in perl compiler
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@728863 13f79535-47bb-0310-9956-ffa450edef68
2008-12-23 03:45:43 +00:00
T Jake Luciani
0d738890ba THRIFT-2: check for thrift::socket handle being null
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@728860 13f79535-47bb-0310-9956-ffa450edef68
2008-12-23 03:12:50 +00:00
David Reiss
0a136c8ca8 THRIFT-208. Fix ax_java.m4 for Ubuntu 8.10
On Ubuntu 8.10, /bin/sh is a symlink to dash (a minimal
Bourne-compatible shell).  ./configure is smart enough
to detect when the shell it is run with is missing features.
In such cases, it switches to a more capable shell (like bash).
This causes it to enable certain shell constructs that are
not supported by dash.  However, the Autoconf macro file that
we use to detect Java support interacts poorly with Autoconf
because it uses divert(-1) for large comments.  This somehow
causes configure to set SHELL to /bin/sh.  As a result, the
libtool script generated during the build process is not
compatible with the shell that is used to run it (if a recent
version of libtool is in use).

This change replaces all of the "divert(-1)" comments
with more traditional "dnl" comments.  This allows Thrift
to build on Ubuntu 8.10.


git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@728756 13f79535-47bb-0310-9956-ffa450edef68
2008-12-22 19:54:12 +00:00
T Jake Luciani
a60df1fab4 THRIFT-190. Added dependency check to perl Makefile
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@728678 13f79535-47bb-0310-9956-ffa450edef68
2008-12-22 13:13:56 +00:00
David Reiss
681e04e47c THRIFT-220. Add some stuff to svn:ignore
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@727131 13f79535-47bb-0310-9956-ffa450edef68
2008-12-16 20:31:26 +00:00