import java.net.MalformedURLException;
import java.net.URL;
import java.util.ArrayList;
-import java.util.Iterator;
import java.util.List;
import java.util.Vector;
import org.apache.log4j.Logger;
import org.w3c.dom.Document;
-import com.sun.org.apache.xpath.internal.jaxp.XPathFactoryImpl;
-
import fr.gouv.finances.cp.utils.PropertiesExpansion;
-import fr.gouv.finances.cp.utils.xml.marshal.XmlMarshallable;
-import fr.gouv.finances.cp.xemelios.data.impl.mysql.MySqlDataResultSet;
import fr.gouv.finances.cp.xemelios.ui.CriteriaViewer;
import fr.gouv.finances.cp.xemelios.ui.MainWindow;
import fr.gouv.finances.cp.xemelios.ui.importArchive.ArchiveWizardDisplayer;
import fr.gouv.finances.cp.xemelios.ui.search.PnlSearch;
import fr.gouv.finances.cp.xemelios.ui.search.PnlSearch.DisplayParameters;
-import fr.gouv.finances.cp.xemelios.ui.xhtmlviewer.XemeliosUserAgent;
import fr.gouv.finances.dgfip.utils.Pair;
import fr.gouv.finances.dgfip.utils.xml.FactoryProvider;
import fr.gouv.finances.dgfip.xemelios.auth.XemeliosUser;
import fr.gouv.finances.dgfip.xemelios.tools.ServiceException;
import fr.gouv.finances.dgfip.xemelios.tools.ToolServiceProviderFactory;
import fr.gouv.finances.dgfip.xemelios.tools.XemeliosToolServiceProvider;
-import fr.gouv.finances.dgfip.xemelios.tools.XemeliosToolServiceProvider.XemeliosCollectivite;
/**
*
final ListeResultatModel lrm = elm.getListeResultat();
final PropertiesExpansion properties = MainWindow.getInstance().getEnvProperties();
final DisplayParameters dp = new DisplayParameters();
- final PnlSearch pnl = new PnlSearch(dm, em, elm, dp, user, properties) {
- @Override
- public void stopWaiter() {}
- @Override
- public void startWaiter() {}
- @Override
- public void setTitle(String newTitle) {}
- @Override
- public void resizeParent(Rectangle bounds) {}
- @Override
- public void redisplayTitle() {}
- @Override
- public void notifyParentStateChanged() {}
- @Override
- public void iconify(boolean iconified) {}
- @Override
- public String getTitle() {return null;}
- @Override
- public boolean canExport() {return false;}
- @Override
- public void actionOnRowPerformed(MouseEvent evt, int row) {}
- };
- final CriteriaViewer cv = new CriteriaViewer(pnl, elm, collectivite, budget, true);
- CritereModel newCm = elm.getCritere("CRI_REFERENTIEL_COLLECTIVITE_IDCOLL");
- PropertyModel propModelOperator = new PropertyModel("OPERATEUR:idColl", "xem:StringEquals");
- PropertyModel propModelValeur = new PropertyModel("VALEUR:idColl", siret);
- newCm.addChild(propModelOperator, new QName("property"));
- newCm.addChild(propModelValeur, new QName("property"));
- cv.changeCritereModel(newCm);
-
- final Vector<CritereModel> crms = new Vector<CritereModel>();
- CritereModel crm = cv.getCurrentCritereModel();
- crms.add(crm);
-
- final String xpath = "/n:Referentiel/n:CollectivitesSPL/n:Collectivite[xem:StringEquals(upper-case(@idColl)," + siret +")]";
-
- final DataResultSet collectivites = dataLayer.search(elm, collectivite, budget , xpath, lrm, crms, user);
- DataHandler dataHandler;
- while (collectivites.hasNext() && (dataHandler = collectivites.next()) != null) {
- XemeliosCollectiviteImpl collectiviteImpl = new XemeliosCollectiviteImpl();
- Document doc = dataHandler.getDocument();
- XPath xp = FactoryProvider.getXPathFactory().newXPath();
- xp.setNamespaceContext(dm.getNamespaces());
- String libelleCollectivite = (String) xp.evaluate("//n:Collectivite/@libelle", doc.getDocumentElement(), XPathConstants.STRING);
- String libellePoste = (String) xp.evaluate("//n:Collectivite/@libelle-poste", doc.getDocumentElement(), XPathConstants.STRING);
- collectiviteImpl.setLibelleCollectivite(libelleCollectivite);
- collectiviteImpl.setLibellePoste(libellePoste);
- libellesCollectivites.add(collectiviteImpl);
+ int count = DataLayerManager.getImplementation().getCollectivitesCount(dm, user);
+ if(count > 0){
+ final PnlSearch pnl = new PnlSearch(dm, em, elm, dp, user, properties) {
+ @Override
+ public void stopWaiter() {}
+ @Override
+ public void startWaiter() {}
+ @Override
+ public void setTitle(String newTitle) {}
+ @Override
+ public void resizeParent(Rectangle bounds) {}
+ @Override
+ public void redisplayTitle() {}
+ @Override
+ public void notifyParentStateChanged() {}
+ @Override
+ public void iconify(boolean iconified) {}
+ @Override
+ public String getTitle() {return null;}
+ @Override
+ public boolean canExport() {return false;}
+ @Override
+ public void actionOnRowPerformed(MouseEvent evt, int row) {}
+ };
+ final CriteriaViewer cv = new CriteriaViewer(pnl, elm, collectivite, budget, true);
+ CritereModel newCm = elm.getCritere("CRI_REFERENTIEL_COLLECTIVITE_IDCOLL");
+ PropertyModel propModelOperator = new PropertyModel("OPERATEUR:idColl", "xem:StringEquals");
+ PropertyModel propModelValeur = new PropertyModel("VALEUR:idColl", siret);
+ newCm.addChild(propModelOperator, new QName("property"));
+ newCm.addChild(propModelValeur, new QName("property"));
+ cv.changeCritereModel(newCm);
+
+ final Vector<CritereModel> crms = new Vector<CritereModel>();
+ CritereModel crm = cv.getCurrentCritereModel();
+ crms.add(crm);
+
+ final String xpath = "/n:Referentiel/n:CollectivitesSPL/n:Collectivite[xem:StringEquals(upper-case(@idColl)," + siret +")]";
+
+ final DataResultSet collectivites = dataLayer.search(elm, collectivite, budget , xpath, lrm, crms, user);
+ DataHandler dataHandler;
+ while (collectivites.hasNext() && (dataHandler = collectivites.next()) != null) {
+ XemeliosCollectiviteImpl collectiviteImpl = new XemeliosCollectiviteImpl();
+ Document doc = dataHandler.getDocument();
+ XPath xp = FactoryProvider.getXPathFactory().newXPath();
+ xp.setNamespaceContext(dm.getNamespaces());
+ String libelleCollectivite = (String) xp.evaluate("//n:Collectivite/@libelle", doc.getDocumentElement(), XPathConstants.STRING);
+ String libellePoste = (String) xp.evaluate("//n:Collectivite/@libelle-poste", doc.getDocumentElement(), XPathConstants.STRING);
+ collectiviteImpl.setLibelleCollectivite(libelleCollectivite);
+ collectiviteImpl.setLibellePoste(libellePoste);
+ libellesCollectivites.add(collectiviteImpl);
+ }
}
-
} catch (final Exception mEx) {
logger.error("getAllLibellesFromReferentielBySiret(" + documentId + "," + siret + ")", mEx);
return null;