Index: topia-service/src/java/org/codelutin/topia/security/entities/authorization/TopiaAssociationAuthorizationImpl.java diff -u topia-service/src/java/org/codelutin/topia/security/entities/authorization/TopiaAssociationAuthorizationImpl.java:1.9 topia-service/src/java/org/codelutin/topia/security/entities/authorization/TopiaAssociationAuthorizationImpl.java:1.10 --- topia-service/src/java/org/codelutin/topia/security/entities/authorization/TopiaAssociationAuthorizationImpl.java:1.9 Fri Oct 27 17:00:24 2006 +++ topia-service/src/java/org/codelutin/topia/security/entities/authorization/TopiaAssociationAuthorizationImpl.java Mon Apr 7 17:04:13 2008 @@ -1,6 +1,6 @@ /* *##% * Copyright (C) 2002, 2003, 2004, 2005 Code Lutin, -* Cédric Pineau, Benjamin Poussin, +* C�dric Pineau, Benjamin Poussin, * * * This program is free software; you can redistribute it and/or @@ -30,13 +30,13 @@ import org.codelutin.topia.persistence.TopiaId; /** - * Classe permettant les autorisations de type association. C'est à dire l'autorisation - * permet de donné une autorisation par rapport à une association dans le modèle. - * Attention il faut avoir une autorisation de chargement sur la l'entité où + * Classe permettant les autorisations de type association. C'est � dire l'autorisation + * permet de donn� une autorisation par rapport � une association dans le mod�le. + * Attention il faut avoir une autorisation de chargement sur la l'entit� o� * commence l'association * @author ruchaud */ -//TODO: Gestion d'un identifiant de début et de fin d'association typé +//TODO: Gestion d'un identifiant de d�but et de fin d'association typ� public class TopiaAssociationAuthorizationImpl extends TopiaAssociationAuthorizationAbstract implements TopiaAssociationAuthorization { @@ -65,10 +65,12 @@ public boolean impliesExpression(String thisExpression, String thatExpression) { String select = "count(test)"; String from = TopiaId.getClassNameAsString(thisExpression) + " test join test." + nameAssociation + " as association"; - String where = "test.topiaId=? and association.topiaId=?"; + String where = "test.topiaId=:test and association.topiaId=:association"; TopiaContext context = getTopiaContext(); try { - List find = context.find("select " + select + " from " + from + " where " + where, new Object[]{thisExpression, thatExpression}); + List find = context.find("select " + select + " from " + from + " where " + where, + "test", thisExpression, + "association", thatExpression); return (Long)find.get(0) >= 1; } catch (TopiaException e) { e.printStackTrace();