Changeset 5468
- Timestamp:
- 07/09/14 15:17:21 (10 years ago)
- Location:
- DASISH/t5.6/backend/annotator-backend/trunk/annotator-backend/src
- Files:
-
- 13 edited
Legend:
- Unmodified
- Added
- Removed
-
DASISH/t5.6/backend/annotator-backend/trunk/annotator-backend/src/main/java/eu/dasish/annotation/backend/dao/DBDispatcher.java
r5385 r5468 214 214 * UPDATERS 215 215 */ 216 217 boolean updateResourceIdentifier(Resource resource, UUID oldIdentifier, UUID newIdentifier) throws NotInDataBaseException; 218 219 216 220 boolean updateAccount(UUID principalExternalID, String account) throws NotInDataBaseException; 217 221 -
DASISH/t5.6/backend/annotator-backend/trunk/annotator-backend/src/main/java/eu/dasish/annotation/backend/dao/ResourceDao.java
r5385 r5468 36 36 UUID getExternalID(Number internalId); 37 37 38 38 boolean updateResourceIdentifier(UUID oldIdentifier, UUID newIdentifier); 39 39 40 40 /** … … 51 51 52 52 Access getPublicAttribute(Number resourceID); 53 54 53 55 } -
DASISH/t5.6/backend/annotator-backend/trunk/annotator-backend/src/main/java/eu/dasish/annotation/backend/dao/impl/DBDispatcherImlp.java
r5385 r5468 615 615 ///// UPDATERS ///////////////// 616 616 @Override 617 public boolean updateResourceIdentifier(Resource resource, UUID oldIdentifier, UUID newIdentifier) { 618 switch (resource) { 619 case PRINCIPAL: 620 return principalDao.updateResourceIdentifier(oldIdentifier, newIdentifier); 621 case ANNOTATION: 622 return annotationDao.updateResourceIdentifier(oldIdentifier, newIdentifier); 623 case TARGET: 624 return targetDao.updateResourceIdentifier(oldIdentifier, newIdentifier); 625 case CACHED_REPRESENTATION: 626 return cachedRepresentationDao.updateResourceIdentifier(oldIdentifier, newIdentifier); 627 case NOTEBOOK: 628 return notebookDao.updateResourceIdentifier(oldIdentifier, newIdentifier); 629 default: 630 return false; 631 } 632 } 633 634 @Override 617 635 public boolean updateAccount(UUID principalExternalID, String account) throws NotInDataBaseException { 618 636 return principalDao.updateAccount(principalExternalID, account); -
DASISH/t5.6/backend/annotator-backend/trunk/annotator-backend/src/main/java/eu/dasish/annotation/backend/dao/impl/JdbcResourceDao.java
r5385 r5468 20 20 import eu.dasish.annotation.backend.Helpers; 21 21 import eu.dasish.annotation.backend.NotInDataBaseException; 22 import eu.dasish.annotation.backend.Resource; 22 23 import eu.dasish.annotation.backend.dao.ResourceDao; 23 24 import eu.dasish.annotation.schema.Access; … … 217 218 } 218 219 }; 220 221 ///// UPDATERS //// 222 223 @Override 224 public boolean updateResourceIdentifier(UUID oldIdentifier, UUID newIdentifier) { 225 Map<String, Object> params = new HashMap<String, Object>(); 226 params.put("oldId", oldIdentifier.toString()); 227 params.put("newId", newIdentifier.toString()); 228 StringBuilder sql = new StringBuilder("UPDATE "); 229 sql.append(resourceTableName).append(" SET "). 230 append(external_id).append("= :newId"). 231 append(" WHERE ").append(external_id).append("= :oldId"); 232 int affectedRows = this.loggedUpdate(sql.toString(), params); 233 return (affectedRows >0); 234 } 235 236 219 237 ////////////////// ROW MAPPERS /////////////////// 220 238 protected final RowMapper<Number> internalIDRowMapper = new RowMapper<Number>() { -
DASISH/t5.6/backend/annotator-backend/trunk/annotator-backend/src/main/java/eu/dasish/annotation/backend/rest/CachedRepresentationResource.java
r5385 r5468 28 28 import eu.dasish.annotation.schema.ObjectFactory; 29 29 import java.awt.image.BufferedImage; 30 import java.io.FileInputStream; 30 31 import java.io.IOException; 31 32 import java.io.InputStream; 33 import java.net.URL; 32 34 import java.sql.SQLException; 33 35 import java.util.HashMap; … … 109 111 110 112 @GET 111 @Produces({"text/plain", "text/html", "text/xml", "application/zip"})113 //@Produces({"text/plain", "text/html", "text/xml", "application/zip", "image/png", "image/jpg"}) 112 114 @Path("{cachedid: " + BackendConstants.regExpIdentifier + "}/stream") 113 115 @Transactional(readOnly = true) … … 142 144 return "Nothing is updated. "; 143 145 } 144 145 146 147 148 } 149 150 @PUT 151 @Consumes("text/plain") 152 @Produces(MediaType.APPLICATION_XML) 153 @Path("{cachedid: " + BackendConstants.regExpIdentifier + "}/path/{isurl}") 154 public String updateCachedBlobFromFile(@PathParam("cachedid") String cachedIdentifier, 155 @PathParam("isurl") String isURL, String blobPath) throws IOException { 156 Map params = new HashMap(); 157 InputStream input; 158 159 if (isURL.equals("URL")) { 160 URL blob = new URL(blobPath); 161 input = blob.openStream(); 162 } else { 163 input = new FileInputStream (blobPath); 164 } 165 166 params.put("stream", input); 167 Integer result = (Integer) (new RequestWrappers(this)).wrapRequestResource(params, new UpdateCachedBlob(), Resource.CACHED_REPRESENTATION, ResourceAction.WRITE, cachedIdentifier); 168 input.close(); 169 if (result != null) { 170 return result + "rows are updated"; 171 } else { 172 return "Nothing is updated. "; 173 } 174 175 146 176 } 147 177 148 178 private class UpdateCachedBlob implements ILambda<Map, Integer> { 179 149 180 @Override 150 181 public Integer apply(Map params) throws NotInDataBaseException { … … 174 205 return "Nothing is updated. "; 175 206 } 176 177 } 178 179 private class UpdateCachedMetadata implements ILambda<Map, Integer> { 207 208 } 209 210 private class UpdateCachedMetadata implements ILambda<Map, Integer> { 211 180 212 @Override 181 213 public Integer apply(Map params) throws NotInDataBaseException { -
DASISH/t5.6/backend/annotator-backend/trunk/annotator-backend/src/main/java/eu/dasish/annotation/backend/rest/DebugResource.java
r5088 r5468 18 18 package eu.dasish.annotation.backend.rest; 19 19 20 import eu.dasish.annotation.backend.BackendConstants; 21 import eu.dasish.annotation.backend.Helpers; 20 22 import eu.dasish.annotation.backend.NotInDataBaseException; 23 import eu.dasish.annotation.backend.Resource; 21 24 import eu.dasish.annotation.schema.AnnotationInfoList; 22 25 import eu.dasish.annotation.schema.ObjectFactory; … … 47 50 48 51 private final String developer = "developer"; 52 53 54 @GET 55 @Produces(MediaType.TEXT_PLAIN) 56 @Path("uuid") 57 public String generateUUID() throws IOException { 58 return (Helpers.generateUUID()).toString(); 59 } 49 60 50 61 @GET … … 118 129 @PUT 119 130 @Produces(MediaType.TEXT_XML) 120 @Path(" account/{principalId}/make/{account}")131 @Path("/account/{principalId}/make/{account}") 121 132 @Transactional(readOnly = true) 122 133 public String updatePrincipalsAccount(@PathParam("principalId") String principalId, @PathParam("account") String account) throws IOException { … … 138 149 httpServletResponse.sendError(HttpServletResponse.SC_FORBIDDEN); 139 150 return "Coucou."; 151 } 152 153 } 154 155 ////////////////////////////////// 156 @PUT 157 @Produces(MediaType.TEXT_XML) 158 @Path("/resource/{resource}/{oldId: " + BackendConstants.regExpIdentifier + "}/newid/{newId:" + BackendConstants.regExpIdentifier + "}") 159 public String updateResourceIdentifier(@PathParam("resource") String resource, @PathParam("oldId") String oldExternalId, @PathParam("newId") String newExternalId) throws IOException { 160 Number remotePrincipalID = this.getPrincipalID(); 161 if (remotePrincipalID == null) { 162 return "null in;ogged principal"; 163 } 164 String typeOfAccount = dbDispatcher.getTypeOfPrincipalAccount(remotePrincipalID); 165 if (typeOfAccount.equals(admin)) { 166 try { 167 final boolean update = dbDispatcher.updateResourceIdentifier(Resource.valueOf(resource), UUID.fromString(oldExternalId), UUID.fromString(newExternalId)); 168 return (update ? "The identifier is updated" : "The account is not updated, see the log."); 169 } catch (NotInDataBaseException e) { 170 httpServletResponse.sendError(HttpServletResponse.SC_INTERNAL_SERVER_ERROR, e.toString()); 171 return e.toString(); 172 } 173 } else { 174 this.ADMIN_RIGHTS_EXPECTED(); 175 httpServletResponse.sendError(HttpServletResponse.SC_FORBIDDEN); 176 return "Dooooeeeii!!"; 140 177 } 141 178 -
DASISH/t5.6/backend/annotator-backend/trunk/annotator-backend/src/main/java/eu/dasish/annotation/backend/rest/ResourceResource.java
r5385 r5468 92 92 } 93 93 } 94 95 94 96 95 97 protected void ADMIN_RIGHTS_EXPECTED() throws IOException { -
DASISH/t5.6/backend/annotator-backend/trunk/annotator-backend/src/main/webapp/index.jsp
r5401 r5468 72 72 <b>Debugging URI's (only for developers)</b><br> 73 73 GET <a href="api/debug/remoteID">api/debug/remoteID</a> <br> 74 GET <a href="api/debug/uuid">api/debug/uuid</a> (random uuid) <br> 74 75 GET <a href="api/debug/annotations">api/debug/annotations</a> <br> 75 updated:GET <a href="api/debug/logDatabase/32">api/debug/logDatabase/32</a> <br>76 updated:GET <a href="api/debug/logServer/32">api/debug/logServer/32</a> <br>76 GET <a href="api/debug/logDatabase/32">api/debug/logDatabase/32</a> <br> 77 GET <a href="api/debug/logServer/32">api/debug/logServer/32</a> <br> 77 78 </body> 78 79 </html> -
DASISH/t5.6/backend/annotator-backend/trunk/annotator-backend/src/test/java/eu/dasish/annotation/backend/dao/impl/JdbcAnnotationDaoTest.java
r5393 r5468 462 462 assertEquals(Access.NONE, jdbcAnnotationDao.getPublicAttribute(1)); 463 463 } 464 465 @Test 466 public void testUpdateIdentifier() throws NotInDataBaseException{ 467 System.out.println("test updateResourceIdentifier "); 468 469 boolean result = jdbcAnnotationDao.updateResourceIdentifier(UUID.fromString("00000000-0000-0000-0000-000000000021"), UUID.fromString("10000000-0000-0000-0000-000000000021")); 470 assertEquals(true, result); 471 Number id = jdbcAnnotationDao.getInternalID(UUID.fromString("10000000-0000-0000-0000-000000000021")); 472 assertEquals(1, id); 473 } 464 474 465 475 @Test -
DASISH/t5.6/backend/annotator-backend/trunk/annotator-backend/src/test/java/eu/dasish/annotation/backend/dao/impl/JdbcCachedRepresentationDaoTest.java
r5393 r5468 218 218 } 219 219 220 221 @Test 222 public void testUpdateIdentifier() throws NotInDataBaseException{ 223 System.out.println("test updateResourceIdentifier "); 224 225 boolean result = jdbcCachedRepresentationDao.updateResourceIdentifier(UUID.fromString("00000000-0000-0000-0000-000000000051"), UUID.fromString("a0000000-0000-0000-0000-000000000051")); 226 assertEquals(true, result); 227 Number id = jdbcCachedRepresentationDao.getInternalID(UUID.fromString("a0000000-0000-0000-0000-000000000051")); 228 assertEquals(1, id); 229 } 220 230 221 231 } -
DASISH/t5.6/backend/annotator-backend/trunk/annotator-backend/src/test/java/eu/dasish/annotation/backend/dao/impl/JdbcNotebookDaoTest.java
r5385 r5468 24 24 import java.util.ArrayList; 25 25 import java.util.List; 26 import java.util.UUID; 26 27 import javax.xml.datatype.DatatypeConfigurationException; 27 28 import javax.xml.datatype.DatatypeFactory; … … 233 234 assertFalse(jdbcNotebookDao.deleteNotebook(3)); 234 235 } 236 237 @Test 238 public void testUpdateIdentifier() throws NotInDataBaseException{ 239 System.out.println("test updateResourceIdentifier "); 240 241 boolean result = jdbcNotebookDao.updateResourceIdentifier(UUID.fromString("00000000-0000-0000-0000-000000000011"), UUID.fromString("a0000000-0000-0000-0000-000000000011")); 242 assertEquals(true, result); 243 Number id = jdbcNotebookDao.getInternalID(UUID.fromString("a0000000-0000-0000-0000-000000000011")); 244 assertEquals(1, id); 245 } 235 246 } -
DASISH/t5.6/backend/annotator-backend/trunk/annotator-backend/src/test/java/eu/dasish/annotation/backend/dao/impl/JdbcPrincipalDaoTest.java
r5393 r5468 168 168 assertEquals(expResult, result); 169 169 } 170 171 @Test 172 public void testUpdateIdentifier() throws NotInDataBaseException{ 173 System.out.println("test updateResourceIdentifier "); 174 175 boolean result = jdbcPrincipalDao.updateResourceIdentifier(UUID.fromString("00000000-0000-0000-0000-000000000111"), UUID.fromString("a0000000-0000-0000-0000-000000000111")); 176 assertEquals(true, result); 177 Number id = jdbcPrincipalDao.getInternalID(UUID.fromString("a0000000-0000-0000-0000-000000000111")); 178 assertEquals(1, id); 179 } 180 170 181 // 171 182 // @Test -
DASISH/t5.6/backend/annotator-backend/trunk/annotator-backend/src/test/java/eu/dasish/annotation/backend/dao/impl/JdbcTargetDaoTest.java
r5393 r5468 207 207 assertEquals(1, result); 208 208 } 209 210 @Test 211 public void testUpdateIdentifier() throws NotInDataBaseException{ 212 System.out.println("test updateResourceIdentifier "); 213 214 boolean result = jdbcTargetDao.updateResourceIdentifier(UUID.fromString("00000000-0000-0000-0000-000000000031"), UUID.fromString("a0000000-0000-0000-0000-000000000031")); 215 assertEquals(true, result); 216 Number id = jdbcTargetDao.getInternalID(UUID.fromString("a0000000-0000-0000-0000-000000000031")); 217 assertEquals(1, id); 218 } 209 219 }
Note: See TracChangeset
for help on using the changeset viewer.