Browse Source

适配动态获取存储地址

master
燕鹏 3 years ago
parent
commit
37c31d750c
  1. 10
      ureport2-console/src/main/java/com/bstek/ureport/console/designer/DesignerServletAction.java
  2. 2
      ureport2-core/src/main/java/com/bstek/ureport/provider/report/ReportProvider.java
  3. 6
      ureport2-core/src/main/java/com/bstek/ureport/provider/report/classpath/ClasspathReportProvider.java
  4. 7
      ureport2-core/src/main/java/com/bstek/ureport/provider/report/file/FileReportProvider.java
  5. 2
      ureport2-core/target/maven-archiver/pom.properties

10
ureport2-console/src/main/java/com/bstek/ureport/console/designer/DesignerServletAction.java

@ -31,6 +31,7 @@ import javax.servlet.http.HttpServletResponse;
import org.antlr.v4.runtime.ANTLRInputStream;
import org.antlr.v4.runtime.CommonTokenStream;
import org.apache.commons.io.IOUtils;
import org.apache.commons.lang3.StringUtils;
import org.apache.velocity.Template;
import org.apache.velocity.VelocityContext;
import org.springframework.beans.BeansException;
@ -186,6 +187,15 @@ public class DesignerServletAction extends RenderPageServletAction {
}
public void loadReportProviders(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
reportProviders.clear();
Collection<ReportProvider> providers=applicationContext.getBeansOfType(ReportProvider.class).values();
for(ReportProvider provider:providers){
provider.refresh();
if(provider.disabled() || provider.getName()==null){
continue;
}
reportProviders.add(provider);
}
writeObjectToJson(resp, reportProviders);
}

2
ureport2-core/src/main/java/com/bstek/ureport/provider/report/ReportProvider.java

@ -45,6 +45,8 @@ public interface ReportProvider {
* @param content 报表的XML内容
*/
void saveReport(String file,String content);
void refresh();
/**
* @return 返回存储器名称
*/

6
ureport2-core/src/main/java/com/bstek/ureport/provider/report/classpath/ClasspathReportProvider.java

@ -69,6 +69,12 @@ public class ClasspathReportProvider implements ReportProvider,ApplicationContex
@Override
public void saveReport(String file,String content) {
}
@Override
public void refresh() {
}
@Override
public List<ReportFile> getReportFiles() {
return null;

7
ureport2-core/src/main/java/com/bstek/ureport/provider/report/file/FileReportProvider.java

@ -44,7 +44,7 @@ import com.bstek.ureport.provider.report.ReportProvider;
* @since 2017年2月11日
*/
public class FileReportProvider implements ReportProvider,ApplicationContextAware{
private String prefix="file:";
private String prefix="ufile:";
private String fileStoreDir;
private boolean disabled;
@Override
@ -119,6 +119,11 @@ public class FileReportProvider implements ReportProvider,ApplicationContextAwar
}
@Override
public void refresh() {
}
@Override
public boolean disabled() {
return disabled;

2
ureport2-core/target/maven-archiver/pom.properties

@ -1,5 +1,5 @@
#Generated by Maven
#Mon May 31 09:30:27 CST 2021
#Tue Jun 22 11:31:47 CST 2021
version=2.3.1-SNAPSHOT
groupId=com.bstek.ureport
artifactId=ureport2-core

Loading…
Cancel
Save