Answer the question
In order to leave comments, you need to log in
Why is an element missing from an ArrayList?
I have a netty server that accepts mail and password to register a new account, but for some reason after creation, the account disappears without a trace.
Registration package handler:
public void packRegisterRead(ChannelHandlerContext ctx, ByteBuf in) {
int emailLength = in.readInt();
int passwordLength = in.readInt();
ByteBuf emailBuf = in.readBytes(emailLength);
ByteBuf passwordBuf = in.readBytes(passwordLength);
String email = StandardCharsets.UTF_8.decode(emailBuf.nioBuffer()).toString(),
password = StandardCharsets.UTF_8.decode(passwordBuf.nioBuffer()).toString();
boolean create = true;
for (int i = 0; i < handler.logic.accounts.size(); i++) {
System.out.println(handler.logic.accounts.get(i).email + " | " + handler.logic.accounts.get(i).password);
if (handler.logic.accounts.get(i).email.equals(email)) {
create = false;
i = handler.logic.accounts.size();
}
}
if (create) {
Account account = new Account(ctx, email, password);
System.out.println(account.email + " | " + account.password);
handler.logic.accounts.add(account);
System.out.println(handler.logic.accounts.size() + " accounts");
account.output.writeBoolean(true);
UtilsFunctions.write(ctx, account.output, UtilsPackages.PACK_REGISTER);
}
else {
ByteBuf output = ctx.alloc().buffer(1024);
output.writeBoolean(false);
UtilsFunctions.write(ctx, output, UtilsPackages.PACK_REGISTER);
}
System.out.println(create);
}
Read 4 package, address: /192.168.1.60:59542 , name: ServerHandler#0
yarr | 123
1 accounts
Written 4 package
true
Read 4 package, address: /192.168.1.60:59569 , name: ServerHandler#0
yarr | 123
1 accounts
Written 4 package
true
Read 4 package, address: /192.168.1.60:59606 , name: ServerHandler#0
oleg | 999
1 accounts
Written 4 package
true
Answer the question
In order to leave comments, you need to log in
Didn't find what you were looking for?
Ask your questionAsk a Question
731 491 924 answers to any question