Drift alternatives and similar libraries
Based on the "Networking" category.
Alternatively, view Drift alternatives based on common mentions on social networks and blogs.
-
TLS Channel
A Java library that implements a ByteChannel interface over SSLEngine, enabling easy-to-use (socket-like) TLS for Java applications.
CodeRabbit: AI Code Reviews for Developers
Do you think we are missing an alternative of Drift or a related project?
Popular Comparisons
README
Drift
Drift is an easy-to-use, annotation-based Java library for creating Thrift clients and serializable types. The client library is similar to JAX-RS (HTTP Rest) and the serialization library is similar to JaxB (XML) and Jackson (JSON), but for Thrift.
Example
The following interface defines a client for a Scribe server:
@ThriftService
public interface Scribe
{
@ThriftMethod
ResultCode log(List<LogEntry> messages);
}
The log
method above uses the LogEntry
Thrift struct which is defined as follows:
@ThriftStruct
public class LogEntry
{
private final String category;
private final String message;
@ThriftConstructor
public LogEntry(String category, String message)
{
this.category = category;
this.message = message;
}
@ThriftField(1)
public String getCategory()
{
return category;
}
@ThriftField(2)
public String getMessage()
{
return message;
}
}
An instance of the Scribe client can be created using a DriftClientFactory
:
// create a client
Scribe scribe = clientFactory.createDriftClient(Scribe.class);
// use client
scribe.log(Arrays.asList(new LogEntry("category", "message")));
Detailed Documentation
- [Drift Codec](drift-codec) -- Thrift type annotations and serialization
- [Drift Client](drift-client) -- Thrift client usage
- [Drift Server](drift-server) -- Thrift server usage