-
-
Notifications
You must be signed in to change notification settings - Fork 487
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
d333a88
commit 32e9b7b
Showing
3 changed files
with
269 additions
and
269 deletions.
There are no files selected for viewing
186 changes: 93 additions & 93 deletions
186
web/src/main/java/org/fao/geonet/services/thesaurus/Add.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,94 +1,94 @@ | ||
//============================================================================= | ||
//=== Copyright (C) 2001-2005 Food and Agriculture Organization of the | ||
//=== United Nations (FAO-UN), United Nations World Food Programme (WFP) | ||
//=== and United Nations Environment Programme (UNEP) | ||
//=== | ||
//=== This program is free software; you can redistribute it and/or modify | ||
//=== it under the terms of the GNU General Public License as published by | ||
//=== the Free Software Foundation; either version 2 of the License, or (at | ||
//=== your option) any later version. | ||
//=== | ||
//=== This program 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 | ||
//=== General Public License for more details. | ||
//=== | ||
//=== You should have received a copy of the GNU General Public License | ||
//=== along with this program; if not, write to the Free Software | ||
//=== Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | ||
//=== | ||
//=== Contact: Jeroen Ticheler - FAO - Viale delle Terme di Caracalla 2, | ||
//=== Rome - Italy. email: GeoNetwork@fao.org | ||
//============================================================================== | ||
|
||
package org.fao.geonet.services.thesaurus; | ||
|
||
import jeeves.constants.Jeeves; | ||
import jeeves.interfaces.Service; | ||
import jeeves.resources.dbms.Dbms; | ||
import jeeves.server.ServiceConfig; | ||
import jeeves.server.context.ServiceContext; | ||
import jeeves.utils.Util; | ||
import org.fao.geonet.GeonetContext; | ||
import org.fao.geonet.constants.Geonet; | ||
import org.fao.geonet.kernel.DataManager; | ||
import org.fao.geonet.kernel.Thesaurus; | ||
import org.fao.geonet.kernel.ThesaurusManager; | ||
import org.fao.geonet.services.NotInReadOnlyModeService; | ||
import org.jdom.Element; | ||
|
||
import java.io.File; | ||
|
||
/** | ||
* For editing : adds a tag to a thesaurus. Access is restricted | ||
*/ | ||
public class Add extends NotInReadOnlyModeService { | ||
public void init(String appPath, ServiceConfig params) throws Exception { | ||
} | ||
|
||
// -------------------------------------------------------------------------- | ||
// --- | ||
// --- Service | ||
// --- | ||
// -------------------------------------------------------------------------- | ||
|
||
public Element serviceSpecificExec(Element params, ServiceContext context) | ||
throws Exception { | ||
GeonetContext gc = (GeonetContext) context | ||
.getHandlerContext(Geonet.CONTEXT_NAME); | ||
|
||
String fname = Util.getParam(params, "fname"); | ||
String dname = Util.getParam(params, "dname"); | ||
String type = Util.getParam(params, "type"); | ||
String activated = Util.getParam(params, "activated", "y"); | ||
|
||
fname = fname.trim(); | ||
|
||
if (!fname.endsWith(".rdf")){ | ||
fname = fname + ".rdf"; | ||
} | ||
|
||
ThesaurusManager tm = gc.getThesaurusManager(); | ||
DataManager dm = gc.getDataManager(); | ||
|
||
String filePath = tm.buildThesaurusFilePath(fname, type, dname); | ||
|
||
File rdfFile = new File(filePath); | ||
Thesaurus thesaurus = new Thesaurus(fname,type,dname,rdfFile,dm.getSiteURL()); | ||
tm.addThesaurus(thesaurus); | ||
|
||
// Save activated status in the database | ||
String query = "INSERT INTO Thesaurus (id, activated) VALUES (?,?)"; | ||
Dbms dbms = (Dbms) context.getResourceManager().open (Geonet.Res.MAIN_DB); | ||
dbms.execute(query, fname, activated); | ||
|
||
Element elResp = new Element(Jeeves.Elem.RESPONSE); | ||
Element elRef = new Element("ref"); | ||
elRef.addContent(thesaurus.getKey()); | ||
elResp.addContent(elRef); | ||
Element elName = new Element("thesaName").setText(fname); | ||
elResp.addContent(elName); | ||
|
||
return elResp; | ||
} | ||
//============================================================================= | ||
//=== Copyright (C) 2001-2005 Food and Agriculture Organization of the | ||
//=== United Nations (FAO-UN), United Nations World Food Programme (WFP) | ||
//=== and United Nations Environment Programme (UNEP) | ||
//=== | ||
//=== This program is free software; you can redistribute it and/or modify | ||
//=== it under the terms of the GNU General Public License as published by | ||
//=== the Free Software Foundation; either version 2 of the License, or (at | ||
//=== your option) any later version. | ||
//=== | ||
//=== This program 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 | ||
//=== General Public License for more details. | ||
//=== | ||
//=== You should have received a copy of the GNU General Public License | ||
//=== along with this program; if not, write to the Free Software | ||
//=== Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | ||
//=== | ||
//=== Contact: Jeroen Ticheler - FAO - Viale delle Terme di Caracalla 2, | ||
//=== Rome - Italy. email: GeoNetwork@fao.org | ||
//============================================================================== | ||
|
||
package org.fao.geonet.services.thesaurus; | ||
|
||
import jeeves.constants.Jeeves; | ||
import jeeves.interfaces.Service; | ||
import jeeves.resources.dbms.Dbms; | ||
import jeeves.server.ServiceConfig; | ||
import jeeves.server.context.ServiceContext; | ||
import jeeves.utils.Util; | ||
import org.fao.geonet.GeonetContext; | ||
import org.fao.geonet.constants.Geonet; | ||
import org.fao.geonet.kernel.DataManager; | ||
import org.fao.geonet.kernel.Thesaurus; | ||
import org.fao.geonet.kernel.ThesaurusManager; | ||
import org.fao.geonet.services.NotInReadOnlyModeService; | ||
import org.jdom.Element; | ||
|
||
import java.io.File; | ||
|
||
/** | ||
* For editing : adds a tag to a thesaurus. Access is restricted | ||
*/ | ||
public class Add extends NotInReadOnlyModeService { | ||
public void init(String appPath, ServiceConfig params) throws Exception { | ||
} | ||
|
||
// -------------------------------------------------------------------------- | ||
// --- | ||
// --- Service | ||
// --- | ||
// -------------------------------------------------------------------------- | ||
|
||
public Element serviceSpecificExec(Element params, ServiceContext context) | ||
throws Exception { | ||
GeonetContext gc = (GeonetContext) context | ||
.getHandlerContext(Geonet.CONTEXT_NAME); | ||
|
||
String fname = Util.getParam(params, "fname"); | ||
String dname = Util.getParam(params, "dname"); | ||
String type = Util.getParam(params, "type"); | ||
String activated = Util.getParam(params, "activated", "y"); | ||
|
||
fname = fname.trim(); | ||
|
||
if (!fname.endsWith(".rdf")){ | ||
fname = fname + ".rdf"; | ||
} | ||
|
||
ThesaurusManager tm = gc.getThesaurusManager(); | ||
DataManager dm = gc.getDataManager(); | ||
|
||
String filePath = tm.buildThesaurusFilePath(fname, type, dname); | ||
|
||
File rdfFile = new File(filePath); | ||
Thesaurus thesaurus = new Thesaurus(fname,type,dname,rdfFile,dm.getSiteURL()); | ||
tm.addThesaurus(thesaurus); | ||
|
||
// Save activated status in the database | ||
String query = "INSERT INTO Thesaurus (id, activated) VALUES (?,?)"; | ||
Dbms dbms = (Dbms) context.getResourceManager().open (Geonet.Res.MAIN_DB); | ||
dbms.execute(query, fname, activated); | ||
|
||
Element elResp = new Element(Jeeves.Elem.RESPONSE); | ||
Element elRef = new Element("ref"); | ||
elRef.addContent(thesaurus.getKey()); | ||
elResp.addContent(elRef); | ||
Element elName = new Element("thesaName").setText(fname); | ||
elResp.addContent(elName); | ||
|
||
return elResp; | ||
} | ||
} |
184 changes: 92 additions & 92 deletions
184
web/src/main/java/org/fao/geonet/services/thesaurus/AddRegister.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,93 +1,93 @@ | ||
//============================================================================= | ||
//=== Copyright (C) 2001-2005 Food and Agriculture Organization of the | ||
//=== United Nations (FAO-UN), United Nations World Food Programme (WFP) | ||
//=== and United Nations Environment Programme (UNEP) | ||
//=== | ||
//=== This program is free software; you can redistribute it and/or modify | ||
//=== it under the terms of the GNU General Public License as published by | ||
//=== the Free Software Foundation; either version 2 of the License, or (at | ||
//=== your option) any later version. | ||
//=== | ||
//=== This program 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 | ||
//=== General Public License for more details. | ||
//=== | ||
//=== You should have received a copy of the GNU General Public License | ||
//=== along with this program; if not, write to the Free Software | ||
//=== Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | ||
//=== | ||
//=== Contact: Jeroen Ticheler - FAO - Viale delle Terme di Caracalla 2, | ||
//=== Rome - Italy. email: GeoNetwork@fao.org | ||
//============================================================================== | ||
|
||
package org.fao.geonet.services.thesaurus; | ||
|
||
import jeeves.constants.Jeeves; | ||
import jeeves.interfaces.Service; | ||
import jeeves.resources.dbms.Dbms; | ||
import jeeves.server.ServiceConfig; | ||
import jeeves.server.context.ServiceContext; | ||
import jeeves.utils.Util; | ||
import org.fao.geonet.GeonetContext; | ||
import org.fao.geonet.constants.Geonet; | ||
import org.fao.geonet.constants.Params; | ||
import org.fao.geonet.kernel.Thesaurus; | ||
import org.fao.geonet.kernel.ThesaurusManager; | ||
import org.fao.geonet.services.NotInReadOnlyModeService; | ||
import org.jdom.Element; | ||
|
||
|
||
/** | ||
* Adds an ISO19135 register record as a thesaurus (or updates it if has | ||
* already been added). | ||
*/ | ||
public class AddRegister extends NotInReadOnlyModeService { | ||
public void init(String appPath, ServiceConfig params) throws Exception { | ||
} | ||
|
||
// -------------------------------------------------------------------------- | ||
// --- | ||
// --- Service | ||
// --- | ||
// -------------------------------------------------------------------------- | ||
|
||
public Element serviceSpecificExec(Element params, ServiceContext context) | ||
throws Exception { | ||
GeonetContext gc = (GeonetContext) context.getHandlerContext(Geonet.CONTEXT_NAME); | ||
Dbms dbms = (Dbms) context.getResourceManager().open (Geonet.Res.MAIN_DB); | ||
|
||
String uuid = Util.getParam(params, Params.UUID); | ||
String type = Util.getParam(params, "type"); | ||
String activated = Util.getParam(params, "activated", "y"); | ||
|
||
ThesaurusManager tm = gc.getThesaurusManager(); | ||
|
||
|
||
String theKey = tm.createUpdateThesaurusFromRegister(uuid, type); | ||
|
||
Thesaurus gst = tm.getThesaurusByName(theKey); | ||
String fname = gst.getFname(); | ||
|
||
// Save activated status in the database | ||
String query = "SELECT * FROM Thesaurus WHERE id = ?"; | ||
java.util.List<Element> result = dbms.select(query, fname).getChildren(); | ||
|
||
if (result.size() == 0) { | ||
query = "INSERT INTO Thesaurus (id, activated) VALUES (?,?)"; | ||
dbms.execute(query, fname, activated); | ||
} else { | ||
query = "UPDATE Thesaurus SET activated = ? WHERE id = ?"; | ||
dbms.execute(query, activated, fname); | ||
} | ||
|
||
Element elResp = new Element(Jeeves.Elem.RESPONSE); | ||
Element elRef = new Element("ref"); | ||
elRef.addContent(theKey); | ||
elResp.addContent(elRef); | ||
Element elName = new Element("thesaName").setText(fname); | ||
elResp.addContent(elName); | ||
|
||
return elResp; | ||
} | ||
//============================================================================= | ||
//=== Copyright (C) 2001-2005 Food and Agriculture Organization of the | ||
//=== United Nations (FAO-UN), United Nations World Food Programme (WFP) | ||
//=== and United Nations Environment Programme (UNEP) | ||
//=== | ||
//=== This program is free software; you can redistribute it and/or modify | ||
//=== it under the terms of the GNU General Public License as published by | ||
//=== the Free Software Foundation; either version 2 of the License, or (at | ||
//=== your option) any later version. | ||
//=== | ||
//=== This program 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 | ||
//=== General Public License for more details. | ||
//=== | ||
//=== You should have received a copy of the GNU General Public License | ||
//=== along with this program; if not, write to the Free Software | ||
//=== Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | ||
//=== | ||
//=== Contact: Jeroen Ticheler - FAO - Viale delle Terme di Caracalla 2, | ||
//=== Rome - Italy. email: GeoNetwork@fao.org | ||
//============================================================================== | ||
|
||
package org.fao.geonet.services.thesaurus; | ||
|
||
import jeeves.constants.Jeeves; | ||
import jeeves.interfaces.Service; | ||
import jeeves.resources.dbms.Dbms; | ||
import jeeves.server.ServiceConfig; | ||
import jeeves.server.context.ServiceContext; | ||
import jeeves.utils.Util; | ||
import org.fao.geonet.GeonetContext; | ||
import org.fao.geonet.constants.Geonet; | ||
import org.fao.geonet.constants.Params; | ||
import org.fao.geonet.kernel.Thesaurus; | ||
import org.fao.geonet.kernel.ThesaurusManager; | ||
import org.fao.geonet.services.NotInReadOnlyModeService; | ||
import org.jdom.Element; | ||
|
||
|
||
/** | ||
* Adds an ISO19135 register record as a thesaurus (or updates it if has | ||
* already been added). | ||
*/ | ||
public class AddRegister extends NotInReadOnlyModeService { | ||
public void init(String appPath, ServiceConfig params) throws Exception { | ||
} | ||
|
||
// -------------------------------------------------------------------------- | ||
// --- | ||
// --- Service | ||
// --- | ||
// -------------------------------------------------------------------------- | ||
|
||
public Element serviceSpecificExec(Element params, ServiceContext context) | ||
throws Exception { | ||
GeonetContext gc = (GeonetContext) context.getHandlerContext(Geonet.CONTEXT_NAME); | ||
Dbms dbms = (Dbms) context.getResourceManager().open (Geonet.Res.MAIN_DB); | ||
|
||
String uuid = Util.getParam(params, Params.UUID); | ||
String type = Util.getParam(params, "type"); | ||
String activated = Util.getParam(params, "activated", "y"); | ||
|
||
ThesaurusManager tm = gc.getThesaurusManager(); | ||
|
||
|
||
String theKey = tm.createUpdateThesaurusFromRegister(uuid, type); | ||
|
||
Thesaurus gst = tm.getThesaurusByName(theKey); | ||
String fname = gst.getFname(); | ||
|
||
// Save activated status in the database | ||
String query = "SELECT * FROM Thesaurus WHERE id = ?"; | ||
java.util.List<Element> result = dbms.select(query, fname).getChildren(); | ||
|
||
if (result.size() == 0) { | ||
query = "INSERT INTO Thesaurus (id, activated) VALUES (?,?)"; | ||
dbms.execute(query, fname, activated); | ||
} else { | ||
query = "UPDATE Thesaurus SET activated = ? WHERE id = ?"; | ||
dbms.execute(query, activated, fname); | ||
} | ||
|
||
Element elResp = new Element(Jeeves.Elem.RESPONSE); | ||
Element elRef = new Element("ref"); | ||
elRef.addContent(theKey); | ||
elResp.addContent(elRef); | ||
Element elName = new Element("thesaName").setText(fname); | ||
elResp.addContent(elName); | ||
|
||
return elResp; | ||
} | ||
} |
Oops, something went wrong.