Package org.internna.iwebmvc.model

Examples of org.internna.iwebmvc.model.DocumentHolder


        fileRepository.init();
    }

    @Before
    public void save() throws Exception {
        doc = new DocumentHolder();
        doc.setIdentifier("web/images/i18n/globe.gif");
        doc.setStream(new FileInputStream(new File(doc.getIdentifier())));
        doc.setMimeType("image/jpg");
        fileRepository.store(doc);
    }
View Full Code Here


        assertTrue("Repository content exists", new File(root, doc.getUri()).exists());
    }

    @Test
    public void retrieveByUri() throws Exception{
        DocumentHolder ret = fileRepository.retrieve(doc.getUri());
        assertNotNull("File was retrieved", ret);
        assertNotNull("Stream is available", ret.getStream());
    }
View Full Code Here

     */
    @Cipher
    @Override
    @RemoteMethod
    public Document upload(FileTransfer file) {
        DocumentHolder holder = new DocumentHolder();
        holder.setStream(file.getInputStream());
        holder.setMimeType(file.getMimeType());
        holder.setIdentifier(file.getName());
        holder.setImageProperties();
        documentRepository.store(holder);
        try {
            dao.create(new TemporalFile(holder.getUri()));
        } catch (Exception e) {
            documentRepository.delete(holder.getUri());
            throw new IWebMvcException("Could not create temporal file", e);
        }
        return holder;
    }
View Full Code Here

    public ModelAndView serve(@RequestParam("file") String file, @RequestParam(required = false, value = "width") String width, @RequestParam(required = false, value = "height") String height, HttpServletResponse response) throws Exception {
        try {
            Assert.isEncrypted(decipherer, file);
            String uri = decipherer.decrypt(file);
            if (log.isDebugEnabled()) log.debug("Retrieving file from URI [" + uri + "]");
            DocumentHolder doc = documentRepository.retrieve(uri);
            if (StringUtils.hasText(doc.getMimeType())) response.setContentType(doc.getMimeType());
            if (width != null) {
                Assert.notNull(height);
                BufferedImage im = getScaledInstance(ImageIO.read(doc.getStream()), Integer.parseInt(width), Integer.parseInt(height));
                ImageIO.write(im, "PNG", response.getOutputStream());
            } else {
                FileCopyUtils.copy(doc.getStream(), response.getOutputStream());
            }
        } catch (RuntimeException r) {
            if (log.isWarnEnabled()) log.warn("Error processing document download: " + r.getMessage());
            response.setStatus(HttpServletResponse.SC_NOT_FOUND);
        }
View Full Code Here

        if (!documentRoot.exists()) documentRoot.mkdirs();
        if (!documentRoot.isDirectory()) throw new IllegalArgumentException("[" + documentRoot.getAbsolutePath() + "] is not a directory!");
    }

    public DocumentHolder retrieve(String uri) {
        DocumentHolder doc = new DocumentHolder();
        try {
            doc.setUri(uri);
            doc.setStream(new FileInputStream(new File(documentRoot, uri)));
        } catch (IOException ioe) {
            throw new IWebMvcException(ioe);
        }
        return doc;
    }
View Full Code Here

        crypto.init();
        controller.decipherer = crypto;
        FileRepository repository = new FileRepository();
        repository.setDocumentRoot(root);
        controller.documentRepository = repository;
        DocumentHolder doc = new DocumentHolder();
        doc.setIdentifier("web/images/i18n/globe.gif");
        doc.setStream(new FileInputStream(new File(doc.getIdentifier())));
        doc.setMimeType("image/jpg");
        repository.store(doc);
        uri = crypto.encrypt(doc.getUri());
    }
View Full Code Here

TOP

Related Classes of org.internna.iwebmvc.model.DocumentHolder

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.