public String baseURI(String path) { return buildURI(basePath, path); }
PageInfo pageInfo = new PageInfo(); pageInfo.setBaseURL(baseURL); pageInfo.setRootPath(rootPath); pageInfo.setBasePath(basePath); pageInfo.setPagePath(pagePath); pageInfo.setExtension( extension ); request.getAttributes().put( PageInfo.KEY, pageInfo );
@Test public void testGetAllHTML() throws Exception { Request req = new Request(); PageInfo page = new PageInfo(); page.setBasePath("foo"); page.setPagePath("bar"); page.setBaseURL("baz"); req.getAttributes().put(PageInfo.KEY, page); Response res = new Response(req); RequestResource.HTMLFormat format = new RequestResource.HTMLFormat(req, res, resource, monitor); ByteArrayOutputStream out = new ByteArrayOutputStream(); format.toRepresentation(monitor.getDAO().getRequests()).write(out); assertTrue(new String(out.toByteArray()).startsWith("<html>")); }
String href( String link, DataFormat format ) { PageInfo pg = getPageInfo(); //try to figure out extension String ext = null; if ( format != null ) { ext = MediaTypes.getExtensionForMediaType( format.getMediaType() ); } if ( ext == null ) { ext = pg.getExtension(); } if(ext != null && ext.length() > 0) link = link+ "." + ext; // encode as relative or absolute depending on the link type if ( link.startsWith( "/") ) { // absolute, encode from "root" return pg.rootURI(link); } else { //encode as relative return pg.pageURI(link); } }
@Override String href(String link, DataFormat format) { return getPageInfo().getBaseURL() + getPageInfo().getRootPath() + FreemarkerTemplateResource.getDirectoryPathAsString(getRequest()) + "/templates/" + link; } }
public String rootURI(String path) { return buildURI(rootPath, path); }
public String pageURI(String path) { return buildURI(pagePath, path); }