Bueno amigos, para que no haya dudas, aqui os dejo lo que termine haciendo, lo de hacer 3 funciones fue solo una idea, ya que lo unico que yo necesitaba que cambiara era solo una linea de codigo en dependencia desde donde fuera llamada la funcione, aqui os la dejo:
Código:
public void AddAtomo(Atom A, boolean M){
if(viewer.getMolecula().EsAdyacente(A, this)){
if(listAtomos.size() == 0){
listAtomos.add(A);
matrizAdj = new int[1][1];
matrizAdj[0][0] = 0;
............................
}
else
{
...........................
}
else if(M){
viewer.showMessage("Error, seleccione un fragmento correcto", "Accion Invalida", 2);
}
};
Lo que sucedia era que en ocasiones yo hacia esta llamada desde un formulario, en este caso necesitaba lanzar un mensaje en algunos casos, y de la otra forma era cuando necesitaba utilizar esta misma funcion de manera interna, para otro proposito pero sin lanzar el mensaje.....Espero hayamos quedado claros todos....
En cuanto a la AOP Hector creo que no es conveniente en mi caso mezclarlo, ya que esto desarrollando con POO, aunque siempre seria bueno analizar las alternativas.....
Un saludo
oracle