Changeset 11149


Ignore:
Timestamp:
06/05/08 15:58:33 (4 years ago)
Author:
sys
Message:

viewObject : getContent avec transformation : renvoit le mimetype.

Location:
trunk
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • trunk/Jav_BDP/com/scenari/m/bdp/itemcontent/IHResource.java

    r1701 r11149  
    4848        public InputStream hGetInputStream() throws Exception; 
    4949         
     50        public String hGetContentType() throws Exception; 
     51         
    5052} 
  • trunk/Jav_BDP/com/scenari/m/bdp/itemcontent/base/XResource.java

    r10706 r11149  
    6161        protected InputStream fInputStream = null; 
    6262 
     63        protected String fContentType = null; 
     64 
    6365        protected Date fLastUpdt = null; 
    6466     
     
    107109        public final Date hGetLastModif() throws Exception { 
    108110                return fLastUpdt; 
     111        } 
     112         
     113        public String hGetContentType() throws Exception { 
     114                return fContentType; 
    109115        } 
    110116 
     
    164170        fRights = pRights; 
    165171    } 
     172 
     173        public void hSetContentType(String pContentType) { 
     174                fContentType = pContentType; 
     175        } 
     176     
    166177} 
  • trunk/Jav_BDP/com/scenari/m/bdp/service/viewobject/HResultatStream.java

    r1701 r11149  
    6161                hSetContentType(""); 
    6262        } 
     63         
     64        /** 
     65         * Construit une réponse pur le renvoi d'un fichier. 
     66         * Si un nom (pName) est passé en paramètre, un téléchargement sera effectué, 
     67         * sinon, une tentative d'ouverture dans le navigateur sera réalisée. 
     68         */ 
     69        public HResultatStream(InputStream pStream, int pSize, long pLastUpdt, String pName, String pMimeType) { 
     70                super(); 
     71                hSetInputStream(pStream); 
     72                hSetLength(pSize); 
     73                hSetLastModifDate(pLastUpdt); 
     74                hSetDownloadNameFile(pName); 
     75                hSetContentType(pMimeType); 
     76        } 
    6377 
    6478} 
  • trunk/Jav_BDP/com/scenari/m/bdp/service/viewobject/HSDialogViewObject.java

    r10914 r11149  
    508508                                                                                                        String vPath = vSrc.hGetUrlFileFormat(); 
    509509                                                                                                        byte[] vRes = vPath != null ? vPath.getBytes("utf8") : new byte[0]; 
    510                                                                                                         fResultatStream = new HResultatStream(new ByteArrayInputStream(vRes), vRes.length, vSrc.hGetLastModifWithChilds(), null); 
    511                                                                                                         ((HResultatStream) fResultatStream).hSetContentType("text/plain"); 
     510                                                                                                        fResultatStream = new HResultatStream(new ByteArrayInputStream(vRes), vRes.length, vSrc.hGetLastModifWithChilds(), null, "text/plain"); 
    512511                                                                                                } else { 
    513512                                                                                                        fResultatStream = new WResultatError(HWebdavCodes.SC_FORBIDDEN); 
     
    515514                                                                                        } else { 
    516515                                                                                                String vName = xGetFileNameForDownload(vCdAction); 
    517                                                                                                 fResultatStream = new HResultatStream(vSrc.hGetInputStream(), vSrc.hGetSize(), vSrc.hGetLastModif(), vName); 
    518                                                                                                 ((HResultatStream) fResultatStream).hSetContentType(vSrc.hGetContentType()); 
     516                                                                                                fResultatStream = new HResultatStream(vSrc.hGetInputStream(), vSrc.hGetSize(), vSrc.hGetLastModif(), vName, vSrc.hGetContentType()); 
    519517                                                                                        } 
    520518                                                                                } 
     
    530528                                                                                String vPath = fWorkspace.hGetRepository().hGetContentAccess().hGetUrlFileFormat(vItemDef.hGetId(), null, hGetUriRes(), vQs, null); 
    531529                                                                                byte[] vRes = vPath != null ? vPath.getBytes("utf8") : new byte[0]; 
    532                                                                                 fResultatStream = new HResultatStream(new ByteArrayInputStream(vRes), vRes.length, System.currentTimeMillis(), null); 
    533                                                                                 ((HResultatStream) fResultatStream).hSetContentType("text/plain"); 
     530                                                                                fResultatStream = new HResultatStream(new ByteArrayInputStream(vRes), vRes.length, System.currentTimeMillis(), null, "text/plain"); 
    534531                                                                        } else { 
    535532                                                                                fResultatStream = new WResultatError(HWebdavCodes.SC_FORBIDDEN); 
     
    539536                                                                        if (vRes != null) { 
    540537                                                                                String vName = xGetFileNameForDownload(vCdAction); 
    541                                                                                 fResultatStream = new HResultatStream(vRes.hGetInputStream(), vRes.hGetLength(), vRes.hGetLastModif().getTime(), vName); 
     538                                                                                fResultatStream = new HResultatStream(vRes.hGetInputStream(), vRes.hGetLength(), vRes.hGetLastModif().getTime(), vName, vRes.hGetContentType()); 
    542539                                                                        } else { 
    543540                                                                                fResultatStream = new WResultatError(HWebdavCodes.SC_NOT_FOUND); 
  • trunk/Jav_BDP_FS/com/scenari/m/bdp/item/fs/HContentAccessFs.java

    r10956 r11149  
    262262                                vRes.hSetLength(vSource.hGetSize()); 
    263263                                vRes.hSetInputStream(vSource.hGetInputStream()); 
     264                                vRes.hSetContentType(vItem.hGetItemType().hGetContentFormat()); 
    264265                        } else { 
    265266                                vRes.hSetLastModif(new Date(vSource.hGetLastModifWithChilds())); 
     
    277278                                vRes.hSetLength((int) vFile.length()); 
    278279                                vRes.hSetInputStream(new BufferedInputStream(new FileInputStream(vFile))); 
     280                                //On renseigne le mimetype. 
     281                                HTransformParams vLastTransform = pTransforms.hGetLastTransform(); 
     282                                IHTransformer vTransformer = HTransformerMgr.hGetTransformerMgr(null).hGetTransformer(vLastTransform); 
     283                                vRes.hSetContentType(vTransformer.hGetMimeType(pTransforms.hGetLastTransform())); 
    279284                        } 
    280285                } 
Note: See TracChangeset for help on using the changeset viewer.