fixes, updates

This commit is contained in:
DieMyst
2019-08-15 12:50:41 +03:00
parent e4a1cf40d2
commit 97de277e07
7 changed files with 59 additions and 64 deletions

View File

@ -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)
}

View File

@ -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);