Contact.java
- /*
- * Copyright (C) 2020-2024 by Savoir-faire Linux
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <https://www.gnu.org/licenses/>.
- */
- package net.jami.jams.common.objects.contacts;
- import lombok.EqualsAndHashCode;
- import lombok.Getter;
- import lombok.NoArgsConstructor;
- import lombok.Setter;
- import net.jami.jams.common.serialization.database.DatabaseObject;
- import java.sql.PreparedStatement;
- import java.sql.ResultSet;
- @Getter
- @Setter
- @NoArgsConstructor
- @EqualsAndHashCode
- public class Contact implements DatabaseObject {
- private transient String owner;
- private String uri;
- private String displayName;
- private Long added;
- private Long removed;
- private Boolean banned = false;
- private Boolean confirmed = false;
- private String conversationId;
- public Contact(ResultSet rs) throws Exception {
- this.owner = rs.getString("owner");
- this.uri = rs.getString("uri");
- this.displayName = rs.getString("displayName");
- this.added = rs.getLong("added");
- this.removed = rs.getLong("removed");
- this.banned = rs.getBoolean("banned");
- this.confirmed = rs.getBoolean("confirmed");
- this.conversationId = rs.getString("conversationId");
- }
- public boolean isAdded() {
- return added > removed;
- }
- @Override
- public PreparedStatement getInsert(PreparedStatement ps) throws Exception {
- ps.setString(1, owner);
- ps.setString(2, uri);
- if (displayName != null) ps.setString(3, displayName);
- else ps.setString(3, "");
- ps.setLong(4, added);
- ps.setLong(5, removed);
- ps.setBoolean(6, banned);
- ps.setBoolean(7, confirmed);
- ps.setString(8, conversationId);
- return ps;
- }
- @Override
- public PreparedStatement getDelete(PreparedStatement ps) throws Exception {
- return null;
- }
- @Override
- public PreparedStatement getUpdate(PreparedStatement ps) throws Exception {
- if (displayName != null) ps.setString(1, displayName);
- else ps.setString(1, "");
- ps.setLong(2, added);
- ps.setLong(3, removed);
- ps.setBoolean(4, banned);
- ps.setBoolean(5, confirmed);
- ps.setString(6, conversationId);
- ps.setString(7, owner);
- ps.setString(8, uri);
- return ps;
- }
- }