Mercurial Hosting > nabble
view src/nabble/modules/hacks/UserHack.java @ 62:4674ed7d56df default tip
remove n2
author | Franklin Schmidt <fschmidt@gmail.com> |
---|---|
date | Sat, 30 Sep 2023 20:25:29 -0600 |
parents | 7ecd1a4ef557 |
children |
line wrap: on
line source
package nabble.modules.hacks; import nabble.model.Db; import nabble.model.ExtensionFactory; import nabble.model.ModelHome; import nabble.model.User; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; public class UserHack { private static final ExtensionFactory<User,UserHack> FACTORY = ModelHome.standardExtensionFactory(HacksModule.INSTANCE.getName(),User.class,UserHack.class); public static UserHack of(User user) { return user.getExtension(FACTORY); } private final User user; public UserHack(User user) { this.user = user; } private int registrationSequence = -1; public int getRegistrationSequence() { if (user.isRegistered() && registrationSequence == -1) { try { Connection con = user.getSite().getDb().getConnection(); PreparedStatement stmt = con.prepareStatement( "select count(1) as n from user_ where user_id <= ?" ); stmt.setLong(1,user.getId()); ResultSet rs = stmt.executeQuery(); rs.next(); registrationSequence = rs.getInt("n"); stmt.close(); con.close(); } catch(SQLException e) { throw new RuntimeException(e); } } return registrationSequence; } }