2014-07-27 23:25:30 +00:00
|
|
|
Thrift Haxe Software Library
|
|
|
|
|
|
|
|
License
|
|
|
|
=======
|
|
|
|
|
|
|
|
Licensed to the Apache Software Foundation (ASF) under one
|
|
|
|
or more contributor license agreements. See the NOTICE file
|
|
|
|
distributed with this work for additional information
|
|
|
|
regarding copyright ownership. The ASF licenses this file
|
|
|
|
to you 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.
|
|
|
|
|
|
|
|
Using Thrift with Haxe
|
|
|
|
========================
|
|
|
|
|
2015-02-01 19:20:34 +00:00
|
|
|
Thrift requires Haxe 3.1.3. Installers for Windows and OSX
|
|
|
|
platforms are available at `http://haxe.org/download`.
|
2014-07-27 23:25:30 +00:00
|
|
|
|
2015-02-01 19:20:34 +00:00
|
|
|
For Linux platforms it is recommended not to download the
|
|
|
|
binaries manually, instead use the Haxe installation shell
|
|
|
|
script which can be found at `http://www.openfl.org/download`.
|
|
|
|
|
|
|
|
Thrift Haxe bindings can be set up via the `haxelib` tool
|
|
|
|
either from the official ASF repo, or via the github mirror.
|
2014-11-15 22:54:16 +00:00
|
|
|
|
|
|
|
- To set up any **stable version**, choose the appropriate branch (e.g. `0.9.3`):
|
|
|
|
|
2015-02-01 19:20:34 +00:00
|
|
|
- `haxelib git thrift https://git-wip-us.apache.org/repos/asf/thrift.git 0.9.3 lib/haxe`
|
|
|
|
- `haxelib git thrift https://github.com/apache/thrift.git 0.9.3 lib/haxe`
|
2014-11-15 22:54:16 +00:00
|
|
|
|
|
|
|
- To set up the current **development version**, use the `master` branch:
|
|
|
|
|
2015-02-01 19:20:34 +00:00
|
|
|
- `haxelib git thrift https://git-wip-us.apache.org/repos/asf/thrift.git master lib/haxe`
|
|
|
|
- `haxelib git thrift https://github.com/apache/thrift.git master lib/haxe`
|
2014-11-15 22:54:16 +00:00
|
|
|
|
|
|
|
As usual, the installed library can be updated using `haxelib upgrade`
|
|
|
|
or `haxelib update thrift`.
|
|
|
|
|
|
|
|
In order to work with Thrift, you will need to install the Thrift compiler
|
|
|
|
or build from source, depending on your operating system. Appropriate
|
|
|
|
downloads and more information can be found at http://thrift.apache.org
|
|
|
|
|
2014-07-27 23:25:30 +00:00
|
|
|
To get started, visit the /tutorial/haxe and /test/haxe dirs for examples.
|
2014-11-15 22:54:16 +00:00
|
|
|
If you are using HIDE or the FlashDevelop IDE, you'll find appropriate
|
|
|
|
project files in these folders.
|
2014-07-27 23:25:30 +00:00
|
|
|
|
|
|
|
|
|
|
|
Current status
|
|
|
|
========================
|
|
|
|
- tested with Haxe C++ target
|
2014-10-01 00:22:48 +00:00
|
|
|
- transports: Socket, HTTP (client only), Stream
|
2014-11-15 22:54:16 +00:00
|
|
|
- protocols: Binary, JSON, Multiplex
|
2014-07-27 23:25:30 +00:00
|
|
|
- tutorial client and server available
|
|
|
|
- cross-test client and server available
|
|
|
|
|
|
|
|
|
|
|
|
Further developments
|
|
|
|
========================
|
|
|
|
- improve to work with C#, Java and JavaScript Haxe/OpenFL targets
|
|
|
|
- improve to work with more (ideally all) Haxe/OpenFL targets
|
2014-10-01 00:22:48 +00:00
|
|
|
- add HTTP server, update tutorial and tests accordingly
|
2014-07-27 23:25:30 +00:00
|
|
|
|
|
|
|
|
|
|
|
Dependencies
|
|
|
|
========================
|
|
|
|
|
|
|
|
Haxe Targets:
|
|
|
|
Depending on the desired targets, you may have to install the appropriate HaxeLibs
|
|
|
|
after installing Haxe itself. For example, if you plan to target C#, Java and C++,
|
|
|
|
enter the following commands after installing Haxe:
|
|
|
|
|
2014-10-01 00:22:48 +00:00
|
|
|
haxelib install hxcpp
|
|
|
|
haxelib install hxjava
|
|
|
|
haxelib install hxcs
|
2014-07-27 23:25:30 +00:00
|
|
|
|
|
|
|
For other targets, please consult the Haxe documentation whether or not any additional
|
|
|
|
target libraries need to be installed and how to achieve this.
|
|
|
|
|
|
|
|
Haxe Libraries:
|
|
|
|
- None (at the time of writing)
|
|
|
|
|
|
|
|
|
|
|
|
Known restrictions
|
|
|
|
========================
|
|
|
|
|
|
|
|
Although designed with maximum portability in mind, for technical reasons some platforms
|
|
|
|
may only support parts of the library, or not be compatible at all.
|
|
|
|
|
|
|
|
Javascript:
|
|
|
|
- tutorial fails to build because of unsupported Sys.args
|
|
|
|
|