/**
*
* Bonita
* Copyright (C) 1999 Bull S.A.
* Bull 68 route de versailles 78434 Louveciennes Cedex France
* Further information: bonita@objectweb.org
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or any later version.
*
* This library 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
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
* USA
*
*
--------------------------------------------------------------------------
* $Id: UpdateEnumDyn.java,v 1.1 2006/08/07 10:01:26 mvaldes Exp $
*
--------------------------------------------------------------------------
*/
package hero.hook;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator;
import java.util.TreeSet;
import hero.util.HeroHookException;
import hero.interfaces.BnNodeLocal;
import hero.interfaces.BnNodePropertyValue;
import hero.interfaces.BnProjectLocal;
import hero.interfaces.Constants;
import hero.interfaces.ProjectSession;
import hero.interfaces.ProjectSessionHome;
import hero.interfaces.ProjectSessionUtil;
public class UpdateEnumDyn implements hero.hook.NodeHookI {
public String getMetadata() {
return Constants.Nd.ONREADY;
}
public void create(Object b,BnNodeLocal n) throws HeroHookException {}
public void beforeStart(Object b,BnNodeLocal n) throws HeroHookException {}
public void beforeTerminate(Object b,BnNodeLocal n) throws HeroHookException {
try{
BnProjectLocal project = n.getBnProject();
String prjName = project.getName();
ProjectSessionHome prjhome = (ProjectSessionHome) ProjectSessionUtil.getHome();
ProjectSession prjSession = prjhome.create();
prjSession.initProject(prjName);
String nodeName=n.getName();
TreeSet setSCRoles = new TreeSet();
setSCRoles.add("miguel");
setSCRoles.add("marc");
setSCRoles.add("florent");
ArrayList arDefault = new ArrayList();
arDefault.add("miguel");
prjSession.updateNodePropertyPossibleValues(nodeName,"enumdyn", setSCRoles, arDefault);
}catch(Exception e){
throw new HeroHookException(e.getMessage());}
}
public void afterTerminate(Object b,BnNodeLocal n) throws HeroHookException {}
public void onCancel(Object b,BnNodeLocal n) throws HeroHookException {}
public void anticipate(Object b,BnNodeLocal n) throws HeroHookException {}
public void onDeadline(Object b,BnNodeLocal n) throws HeroHookException {}
public void afterStart(Object b, BnNodeLocal n) throws HeroHookException {}
public void onReady(Object b,BnNodeLocal n) throws HeroHookException {}
}
|