001: /*
002: * SalomeTMF is a Test Management Framework
003: * Copyright (C) 2005 France Telecom R&D
004: *
005: * This library is free software; you can redistribute it and/or
006: * modify it under the terms of the GNU Lesser General Public
007: * License as published by the Free Software Foundation; either
008: * version 2 of the License, or (at your option) any later version.
009: *
010: * This library is distributed in the hope that it will be useful,
011: * but WITHOUT ANY WARRANTY; without even the implied warranty of
012: * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
013: * Lesser General Public License for more details.
014: *
015: * You should have received a copy of the GNU Lesser General Public
016: * License along with this library; if not, write to the Free Software
017: * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
018: *
019: * @author Fayçal SOUGRATI
020: *
021: * Contact: mikael.marche@rd.francetelecom.com
022: */
023:
024: package org.objectweb.salome_tmf.api.api2ihm;
025:
026: import java.sql.PreparedStatement;
027: import java.sql.SQLException;
028: import java.util.Properties;
029:
030: import org.objectweb.salome_tmf.api.ApiConstants;
031: import org.objectweb.salome_tmf.api.api2db.DataBase;
032: import org.objectweb.salome_tmf.api.api2ihm.campTest.CampTestDelete;
033: import org.objectweb.salome_tmf.api.api2ihm.campTest.CampTestDeleteImpl;
034: import org.objectweb.salome_tmf.api.api2ihm.campTest.CampTestInsert;
035: import org.objectweb.salome_tmf.api.api2ihm.campTest.CampTestInsertImpl;
036: import org.objectweb.salome_tmf.api.api2ihm.campTest.CampTestSelect;
037: import org.objectweb.salome_tmf.api.api2ihm.campTest.CampTestSelectImpl;
038: import org.objectweb.salome_tmf.api.api2ihm.campTest.CampTestUpdate;
039: import org.objectweb.salome_tmf.api.api2ihm.campTest.CampTestUpdateImpl;
040:
041: /**
042: * Classe constituant le point d'entrée sur les fonctions appartenant à l'aire fonctionnelle "Campagnes de test"
043: */
044: public class CampTest implements ApiConstants {
045:
046: /**
047: * Pointeur sur la classe contenant les traitement relatifs aux requetes de suppression
048: */
049: CampTestDelete myCampTestDelete = null;
050:
051: /**
052: * Pointeur sur la classe contenant les traitement relatifs aux requetes d'insertion
053: */
054: CampTestInsert myCampTestInsert = null;
055:
056: /**
057: * Pointeur sur la classe contenant les traitement relatifs aux requetes de selection
058: */
059: CampTestSelect myCampTestSelect = null;
060:
061: /**
062: * Pointeur sur la classe contenant les traitement relatifs aux requetes de mise a jour
063: */
064: CampTestUpdate myCampTestUpdate = null;
065:
066: DataBase database;
067:
068: Properties prop;
069:
070: /**
071: * Constructeur
072: * @param db BdD
073: */
074: public CampTest(DataBase db) {
075: // Initialisation du fichier "properties"
076: prop = Utile.getPropertiesFile(CAMP_STMTS_FILE_PATH);
077:
078: // Initialisation des pointeurs sur les sous classes
079: myCampTestDelete = new CampTestDeleteImpl(db, prop);
080: myCampTestInsert = new CampTestInsertImpl(db, prop);
081: myCampTestSelect = new CampTestSelectImpl(db, prop);
082: myCampTestUpdate = new CampTestUpdateImpl(db, prop);
083:
084: database = db;
085: }
086:
087: /**
088: * Fonction qui fixe le projet SalomeTMF dans lequel l'utilisateur travaille
089: * @param projectName Nom du projet VT
090: */
091: public void setProject(String projectName) {
092: myCampTestDelete.setProject(projectName);
093: myCampTestInsert.setProject(projectName);
094: myCampTestSelect.setProject(projectName);
095: myCampTestUpdate.setProject(projectName);
096: //org.objectweb.salome_tmf.api.Api.getInstanceOfBugzillaAPI().init(projectName);
097: }
098:
099: /**
100: * Accesseur sur le champs "myCampTestDelete"
101: * @return Instance de la classe contenant les fonctions de suppression de la BdD
102: */
103: public CampTestDelete getCampTestDelete() {
104: return myCampTestDelete;
105: }
106:
107: /**
108: * Accesseur sur le champs "myCampTestInsert"
109: * @return Instance de la classe contenant les fonctions d'insertion dans la BdD
110: */
111: public CampTestInsert getCampTestInsert() {
112: return myCampTestInsert;
113: }
114:
115: /**
116: * Accesseur sur le champs "myCampTestSelect"
117: * @return Instance de la classe contenant les fonctions de selection de la BdD
118: */
119: public CampTestSelect getCampTestSelect() {
120: return myCampTestSelect;
121: }
122:
123: /**
124: * Accesseur sur le champs "myCampTestUpdate"
125: * @return Instance de la classe contenant les fonctions de mise à jour de la BdD
126: */
127: public CampTestUpdate getCampTestUpdate() {
128: return myCampTestUpdate;
129: }
130:
131: /**
132: * permet de locker les tables de définitions des Tests lors de l'exécution des campagnes
133: *
134: */
135: public void lockTestPlan() {
136: // Initialisation du fichier "properties"
137: System.out.println("LOCK TEST PLAN-->");
138: org.objectweb.salome_tmf.api.Api.specialLock();
139: try {
140: PreparedStatement prep = database.prepareStatement(prop
141: .getProperty("lock"));
142: prep.execute();
143: } catch (SQLException se) {
144: se.printStackTrace();
145: }
146:
147: }
148:
149: /**
150: * permet de locker les tables de définitions des Tests lors de l'exécution des campagnes
151: *
152: */
153: public void unLockTestPlan() {
154: // Initialisation du fichier "properties"
155: System.out.println("<--UNLOCK TEST PLAN");
156: org.objectweb.salome_tmf.api.Api.specialUnLock();
157: try {
158: PreparedStatement prep = database.prepareStatement(prop
159: .getProperty("unlock"));
160: prep.execute();
161: } catch (SQLException se) {
162: se.printStackTrace();
163: }
164:
165: }
166: }
|