Changeset a93a57c in murachi


Ignore:
Timestamp:
Aug 12, 2015, 4:58:21 PM (9 years ago)
Author:
antonioaraujob <aaraujo@…>
Branches:
master
Children:
efcd8d1
Parents:
34d85b6
Message:

Se verifica si un contenedor esta serializado o no en recursos.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • murachi/src/main/java/ve/gob/cenditel/murachi/MurachiRESTWS.java

    r34d85b6 ra93a57c  
    22572257                logger.info("/bdocs/archivos/"+containerId);
    22582258                                                               
    2259                 String fullPathBdocFile = SERVER_UPLOAD_LOCATION_FOLDER + containerId + ".bin";
    2260                 logger.debug(fullPathBdocFile);
    2261                
    2262                
     2259                String fullPathBdocFile = "";
     2260                Boolean bdoc = false;
     2261               
     2262                if (containerId.endsWith(".bdoc"))
     2263                {
     2264                        fullPathBdocFile = SERVER_UPLOAD_LOCATION_FOLDER + containerId;
     2265                        logger.debug(fullPathBdocFile);
     2266                        bdoc = true;
     2267                }
     2268                else
     2269                {
     2270                        fullPathBdocFile = SERVER_UPLOAD_LOCATION_FOLDER + containerId + "-serialized.bin";
     2271                        logger.debug(fullPathBdocFile);
     2272                }
     2273                                               
    22632274                JSONObject json = new JSONObject();
    22642275                int dataFileNumber = 0;
    22652276               
    2266                 Response response;
     2277                Response response = null;
    22672278                               
    22682279                // Retrieve the file
     
    22782289                        Container c;
    22792290                       
    2280                         try {
    2281                                 c = deserialize(fullPathBdocFile);
    2282                                
     2291                        if (bdoc)
     2292                        {
     2293                                c = Container.open(fullPathBdocFile, configuration);
     2294                                logger.debug("open container: "+ fullPathBdocFile);
    22832295                                dataFileNumber = c.getDataFiles().size();
    22842296                                logger.debug("dataFileNumber: "+ Integer.toString(dataFileNumber));
     
    22862298                               
    22872299                                response = Response.status(200).entity(json.toString()).build();
    2288                                
    2289                         } catch (ClassNotFoundException e) {
    2290                                 // TODO Auto-generated catch block
    2291                                 e.printStackTrace();
    2292                                
    2293                                 json.put("error", "error interno al leer el contenedor");                               
    2294                                 response = Response.status(500).entity(json.toString()).build();
    2295 
    2296                         } catch (IOException e) {
    2297                                 // TODO Auto-generated catch block
    2298                                 e.printStackTrace();
    2299                                 json.put("error", "no se pudo leer el contenedor");                             
    2300                                 response = Response.status(500).entity(json.toString()).build();
    2301                         }                                                                                       
     2300                        }
     2301                        else
     2302                        {
     2303                                try {
     2304                                        c = deserialize(fullPathBdocFile);
     2305                                       
     2306                                        dataFileNumber = c.getDataFiles().size();
     2307                                        logger.debug("dataFileNumber: "+ Integer.toString(dataFileNumber));
     2308                                        json.put("dataFileNumber", Integer.toString(dataFileNumber));
     2309                                       
     2310                                        response = Response.status(200).entity(json.toString()).build();
     2311                                       
     2312                                } catch (ClassNotFoundException e) {
     2313                                        // TODO Auto-generated catch block
     2314                                        e.printStackTrace();
     2315                                       
     2316                                        json.put("error", "error interno al leer el contenedor");                               
     2317                                        response = Response.status(500).entity(json.toString()).build();
     2318
     2319                                } catch (IOException e) {
     2320                                        // TODO Auto-generated catch block
     2321                                        e.printStackTrace();
     2322                                        json.put("error", "no se pudo leer el contenedor");                             
     2323                                        response = Response.status(500).entity(json.toString()).build();
     2324                                }
     2325                        }
     2326                       
     2327                                                                                       
    23022328            } else {
    23032329                logger.error("El contenedor con id: "+containerId+ " no existe.");
     
    23232349                logger.info("/bdocs/archivos/lista/"+containerId);
    23242350               
    2325                 String fullPathBdocFile = SERVER_UPLOAD_LOCATION_FOLDER + containerId + ".bin";
    2326                 logger.debug(fullPathBdocFile);
    2327                
     2351                //String fullPathBdocFile = SERVER_UPLOAD_LOCATION_FOLDER + containerId + ".bin";
     2352                //logger.debug(fullPathBdocFile);
     2353               
     2354                String fullPathBdocFile = "";
     2355                Boolean bdoc = false;
     2356               
     2357                if (containerId.endsWith(".bdoc"))
     2358                {
     2359                        fullPathBdocFile = SERVER_UPLOAD_LOCATION_FOLDER + containerId;
     2360                        logger.debug(fullPathBdocFile);
     2361                        bdoc = true;
     2362                }
     2363                else
     2364                {
     2365                        fullPathBdocFile = SERVER_UPLOAD_LOCATION_FOLDER + containerId + "-serialized.bin";
     2366                        logger.debug(fullPathBdocFile);
     2367                }
     2368                       
    23282369                JSONObject jsonDataFile = new JSONObject();
    23292370                int dataFileNumber = 0;
     
    23412382                        configuration.setTslLocation(DIGIDOC4J_TSL_LOCATION);
    23422383               
    2343                         Container c;
     2384                        Container c = null;
    23442385                        String dataFileName = "";
    23452386                        Long dataFileSize = (long) 0;
    23462387                       
    2347                         try {
    2348                                 c = deserialize(fullPathBdocFile);
    2349                                
    2350                                 dataFileNumber = c.getDataFiles().size();
    2351                                                                
    2352                                 if (dataFileNumber > 0)
     2388                       
     2389                        if (bdoc)
     2390                        {
     2391                                c = Container.open(fullPathBdocFile, configuration);           
     2392                                logger.debug("contenedor abierto: " + fullPathBdocFile);
     2393                        }
     2394                        else
     2395                        {
     2396                                try {
     2397                                        c = deserialize(fullPathBdocFile);
     2398                                        logger.debug("contenedor deserializado: " + fullPathBdocFile);
     2399                                       
     2400                                } catch (ClassNotFoundException e) {
     2401                                        // TODO Auto-generated catch block
     2402                                        e.printStackTrace();
     2403                                       
     2404                                        jsonDataFile.put("error", "error interno al leer el contenedor");                               
     2405                                        response = Response.status(500).entity(jsonDataFile.toString()).build();
     2406                                        return response;
     2407
     2408                                } catch (IOException e) {
     2409                                        // TODO Auto-generated catch block
     2410                                        e.printStackTrace();
     2411                                        jsonDataFile.put("error", "no se pudo leer el contenedor");                             
     2412                                        response = Response.status(500).entity(jsonDataFile.toString()).build();
     2413                                        return response;
     2414                                }
     2415                               
     2416                        }
     2417                       
     2418                        dataFileNumber = c.getDataFiles().size();
     2419                        logger.debug("dataFileNumber: " + Integer.toString(dataFileNumber));
     2420                       
     2421                        if (dataFileNumber > 0)
     2422                        {
     2423                                for (int i=0; i<dataFileNumber; i++)
    23532424                                {
    2354                                         for (int i=0; i<dataFileNumber; i++)
    2355                                         {
    2356                                                 // el dataFile es valido
    2357                                                 DataFile df = c.getDataFile(i);
    2358                                                 dataFileName = df.getName();
    2359                                                 dataFileSize = df.getFileSize();
    2360                                                 logger.debug("obtenido DataFile: "+Integer.toString(i));
    2361                                                 logger.debug("DataFile name: "+ dataFileName);
    2362                                                 logger.debug("DataFile size: "+ Long.toString(dataFileSize));
    2363                                         }
    2364                                         jsonDataFile.put("dataFiles", getJSONFromBDOCDataFiles(c.getDataFiles()));
    2365                                         response = Response.status(200).entity(jsonDataFile.toString()).build();
     2425                                        // el dataFile es valido
     2426                                        DataFile df = c.getDataFile(i);
     2427                                        dataFileName = df.getName();
     2428                                        dataFileSize = df.getFileSize();
     2429                                        logger.debug("obtenido DataFile: "+Integer.toString(i));
     2430                                        logger.debug("DataFile name: "+ dataFileName);
     2431                                        logger.debug("DataFile size: "+ Long.toString(dataFileSize));
    23662432                                }
    2367                                 else
    2368                                 {
    2369                                         logger.debug("dataFileNumber: "+ Integer.toString(dataFileNumber));
    2370                                         jsonDataFile.put("dataFileNumber", Integer.toString(dataFileNumber));
    2371                                         response = Response.status(200).entity(jsonDataFile.toString()).build();
    2372                                 }                               
    2373                                
    2374                         } catch (ClassNotFoundException e) {
    2375                                 // TODO Auto-generated catch block
    2376                                 e.printStackTrace();
    2377                                
    2378                                 jsonDataFile.put("error", "error interno al leer el contenedor");                               
    2379                                 response = Response.status(500).entity(jsonDataFile.toString()).build();
    2380 
    2381                         } catch (IOException e) {
    2382                                 // TODO Auto-generated catch block
    2383                                 e.printStackTrace();
    2384                                 jsonDataFile.put("error", "no se pudo leer el contenedor");                             
    2385                                 response = Response.status(500).entity(jsonDataFile.toString()).build();
    2386                         }                                                                                       
     2433                                jsonDataFile.put("dataFiles", getJSONFromBDOCDataFiles(c.getDataFiles()));
     2434                                response = Response.status(200).entity(jsonDataFile.toString()).build();
     2435                        }
     2436                        else
     2437                        {
     2438                                logger.debug("dataFileNumber: "+ Integer.toString(dataFileNumber));
     2439                                jsonDataFile.put("dataFileNumber", Integer.toString(dataFileNumber));
     2440                                response = Response.status(200).entity(jsonDataFile.toString()).build();
     2441                        }               
     2442                       
     2443                                                                                                               
    23872444            } else {
    23882445                logger.error("El contenedor con id: "+containerId+ " no existe.");
     
    24522509                        configuration.setTslLocation(DIGIDOC4J_TSL_LOCATION);
    24532510               
    2454                         container = Container.open(fullPathBdocFile, configuration);
    2455                         logger.debug("open container: "+ fullPathBdocFile);
     2511                        if (containerId.endsWith(".bdoc"))
     2512                        {
     2513                                container = Container.open(fullPathBdocFile, configuration);
     2514                                logger.debug("open container: "+ fullPathBdocFile);
     2515                        }
     2516                        else
     2517                        {
     2518                                try {
     2519                                        container = deserialize(fullPathBdocFile + "-serialized.bin");
     2520                                } catch (ClassNotFoundException e) {
     2521
     2522                                        //e.printStackTrace();
     2523                                        response = Response.status(500).entity("{\"error\": \"no se pudo leer el contenido del contenedor\"}").type("text/plain").build();
     2524                                        logger.error("no se pudo deserializar el contenedor para leer su contenido");
     2525                                }
     2526                                catch (IOException e) {
     2527
     2528                                        //e.printStackTrace();
     2529                                        response = Response.status(500).entity("{\"error\": \"no se pudo leer el contenido del contenedor\"}").type("text/plain").build();
     2530                                        logger.error("no se pudo deserializar el contenedor para leer su contenido");
     2531                                }
     2532                        }
    24562533                       
    24572534                        int dfSize = container.getDataFiles().size();
Note: See TracChangeset for help on using the changeset viewer.