mirror of
https://github.com/fluencelabs/fluid
synced 2025-06-21 09:01:32 +00:00
fixes, updates
This commit is contained in:
@ -1,7 +1,7 @@
|
||||
import {Action, decode, FetchRequest, PostRequest} from "./request";
|
||||
import {PostResponse, Message, FetchResponse, UnknownResponse} from "./response";
|
||||
|
||||
let messageList: Array<Message> = new Array<Message>();
|
||||
let posts: Array<Message> = new Array<Message>();
|
||||
|
||||
// main handler for an application
|
||||
export function handler(input: string): string {
|
||||
@ -10,19 +10,19 @@ export function handler(input: string): string {
|
||||
|
||||
if (request.action == Action.Post) {
|
||||
let post = request as PostRequest;
|
||||
messageList.push(new Message(post.msg, post.handle));
|
||||
let response = new PostResponse(messageList.length);
|
||||
posts.push(new Message(post.msg, post.handle));
|
||||
let response = new PostResponse(posts.length);
|
||||
return response.serialize()
|
||||
} else if (request.action == Action.Fetch) {
|
||||
let fetch = request as FetchRequest;
|
||||
var messages: Array<Message>;
|
||||
if (fetch.filter_handle == null) {
|
||||
messages = messageList
|
||||
messages = posts
|
||||
} else {
|
||||
let filter_handle = fetch.filter_handle as string;
|
||||
let filtered = new Array<Message>();
|
||||
for (let i = 0; i < messageList.length; i++) {
|
||||
let message = messageList[i];
|
||||
for (let i = 0; i < posts.length; i++) {
|
||||
let message = posts[i];
|
||||
if (message.handle == filter_handle) {
|
||||
filtered.push(message)
|
||||
}
|
||||
|
@ -34,17 +34,17 @@ export class UnknownResponse extends Response {
|
||||
}
|
||||
|
||||
export class PostResponse extends Response {
|
||||
numberOfTwits: i32;
|
||||
constructor(numberOfTwits: i32) {
|
||||
msgCount: i32;
|
||||
constructor(msgCount: i32) {
|
||||
super();
|
||||
this.numberOfTwits = numberOfTwits;
|
||||
this.msgCount = msgCount;
|
||||
}
|
||||
|
||||
serialize(): string {
|
||||
let encoder = new JSONEncoder();
|
||||
encoder.pushObject(null);
|
||||
encoder.setString("action", "Post");
|
||||
encoder.setInteger("number_of_twits", this.numberOfTwits);
|
||||
encoder.setInteger("count", this.msgCount);
|
||||
encoder.popObject();
|
||||
|
||||
return encoder.toString();
|
||||
@ -52,20 +52,20 @@ export class PostResponse extends Response {
|
||||
}
|
||||
|
||||
export class FetchResponse extends Response {
|
||||
messageList: Array<Message>;
|
||||
posts: Array<Message>;
|
||||
|
||||
constructor(messageList: Array<Message>) {
|
||||
constructor(posts: Array<Message>) {
|
||||
super();
|
||||
this.messageList = messageList;
|
||||
this.posts = posts;
|
||||
}
|
||||
|
||||
serialize(): string {
|
||||
let encoder = new JSONEncoder();
|
||||
encoder.pushObject(null);
|
||||
encoder.setString("action", "Fetch");
|
||||
encoder.pushArray("message_list");
|
||||
for (let i = 0; i < this.messageList.length; i++) {
|
||||
let twit = this.messageList[i];
|
||||
encoder.pushArray("posts");
|
||||
for (let i = 0; i < this.posts.length; i++) {
|
||||
let twit = this.posts[i];
|
||||
encoder.pushObject(null);
|
||||
encoder.setString("msg", twit.msg);
|
||||
encoder.setString("handle", twit.handle);
|
||||
|
Reference in New Issue
Block a user