return true;
}
@Override
public boolean like(Publication publication, String nom, boolean like, String pseudo) throws RemoteException {
Publication pb = null;
HashMap<String, Profil> profils;
ProfilSocial profil;
try {
// Récupération de la liste des profils
profils = Serialiser.deserialiser(Constantes.PROFIL);
try {
// Récupération du profil correspondant
profil = (ProfilSocial)profils.get(nom);
// Récupération de la publication à aimer (ou non)
for (Publication pub : profil.getPublications()) {
if (pub.getDate().equals(publication.getDate()) && pub.getPseudo().equals(publication.getPseudo())) {
pb = pub;
break;
}
}
// Like ou Dislike sur la publication
if (like)
pb.like(pseudo);
else
pb.dislike(pseudo);
// Mise à jour de la liste des profils
profils.put(nom, profil);
// Enregistrement de la nouvelle liste
Serialiser.serialiser(profils, Constantes.PROFIL);
} catch (NullPointerException e1) { // Aucun pseudonyme profil ne correspond au nom entré en paramètre, ou la publication n'a pas été trouvée pour ce profil
HashMap<String, Groupe> groupes;
Groupe groupe;
// Récupération de la liste des groupes
groupes = Serialiser.deserialiser(Constantes.GROUPES);
try {
// Récupération du groupe correspondant
groupe = groupes.get(nom);
// Récupération de la publication à commenter
for (Publication pub : groupe.getPublications()) {
if (pub.getDate().compareTo(publication.getDate()) == 0 && pub.getPseudo().equals(publication.getPseudo())) {
pb = pub;
break;
}
}
// Like ou Dislike sur la publication
if (like)
pb.like(pseudo);
else
pb.dislike(pseudo);
// Mise à jour de la liste des groupes
groupes.put(nom, groupe);
// Enregistrement de la nouvelle liste