Refactor without codec .....

This commit is contained in:
Mihai Moldovanu 2022-08-02 16:20:09 +03:00
parent 38f1cb0750
commit 0c5a15be65
2 changed files with 22 additions and 34 deletions

View File

@ -0,0 +1,19 @@
package ro.mihai;
import com.twitter.finagle.Service;
import com.twitter.finagle.http.Request;
import com.twitter.finagle.http.Response;
import com.twitter.finagle.http.Status;
import com.twitter.io.Buf;
import com.twitter.io.Reader;
import com.twitter.util.Future;
public class GreetingsService extends Service<Request, Response> {
@Override
public Future<Response> apply(Request request) {
String greeting = "Hello " + request.getParam("name");
Reader<Buf> reader = Reader.fromBuf(new Buf.ByteArray(greeting.getBytes(), 0, greeting.length()));
return Future.value(Response.apply(request.version(), Status.Ok(), reader));
}
}

View File

@ -1,39 +1,8 @@
package ro.mihai;
import com.twitter.finagle.Codec;
import ro.mihai.GreetingsService;
import com.twitter.finagle.Http;
import com.twitter.finagle.Service;
import com.twitter.finagle.builder.ServerBuilder;
import com.twitter.finagle.http.codec.HttpCodec;
import com.twitter.util.Future;
import io.netty.handler.codec.http2.Http2Connection;
import org.jboss.netty.handler.codec.http.*;
import org.jboss.netty.handler.codec.http.HttpRequest;
import org.jboss.netty.handler.codec.http.HttpResponse;
import java.net.InetSocketAddress;
import static com.twitter.finagle.Http.Http2;
public class Main {
public static void main(String[] args) {
System.out.println("Hello world!");
Service<HttpRequest, HttpResponse> service = new Service<HttpRequest, HttpResponse>() {
public Future<HttpResponse> apply(HttpRequest request) {
DefaultHttpResponse response = new DefaultHttpResponse(HttpVersion.HTTP_1_1, HttpResponseStatus.OK);
return Future.value(response);
}
};
HttpCodec blah = new HttpCodec();
ServerBuilder.safeBuild(service, ServerBuilder.get()
.codec(blah)
.name("HttpServer")
.bindTo(new InetSocketAddress("localhost", 10000)));
}
GreetingsService sServ = new GreetingsService();
Http.serve(":8080", sServ);
}