if (this.activity.hasSteps())
if (this.activity.hasInputProducts() || this.activity.hasGuidanceWithoutType( "Liste de controles") || this.activity.getRole() .hasGuidanceWithoutType("Liste de controles")) { state = new PreConditionCheckerState( this.activityScheduler, this.activity); } else if (this.activity.hasSteps())
	public boolean manageRequest (Request request)	{		// AbstractActivityState temporaire		AbstractActivityState state;		// on regarde le type de requete que l'on recoit		switch (request.getCurrentRequest())		{			case NEXT:				if (this.activity.hasSteps())				{					state = new StepState(this.activityScheduler,							this.activity, 0);				}				else if (this.activity.hasOutputProducts()						|| this.activity.hasGuidanceType("Liste de controles")						|| this.activity.getRole().hasGuidanceType(								"Liste de controles"))				{					state = new PostConditionCheckerState(							this.activityScheduler, this.activity);				}				else				{					return false;				}				break;			case PREVIOUS:				// si l'activite a des produit en entree ou qu'elle a des guides				// qui ne sont pas de type "liste de controles"				// ou que le role associe a l'activite a des guides qui ne sont				// pas de type "liste de controles"				if (this.activity.hasInputProducts()						|| this.activity								.hasGuidanceWithoutType("Liste de controles")						|| this.activity.getRole().hasGuidanceWithoutType(								"Liste de controles"))				{					state = new PreConditionCheckerState(							this.activityScheduler, this.activity);				}				else				{					return false;				}				break;			case GOTOSTEP:				return super.manageRequest(request);			default:				return false;		}		if (state == null)		{			System.err.println("state a null dans le manage request");			return false;		}		this.activityScheduler.setState(state);		return true;	}