Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
34 changes: 14 additions & 20 deletions src/main/java/io/carbone/CarboneServices.java
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ class CarboneServices implements ICarboneServices {
int err;
private final ICarboneTemplateClient carboneTemplateClient;
private final ICarboneRenderClient carboneRenderClient;
private final ICarboneStatusClient carboneStatusClient ;
private final ICarboneStatusClient carboneStatusClient;
String reportName;

public CarboneServices(ICarboneTemplateClient carboneTemplateClient, ICarboneRenderClient carboneRenderClient, ICarboneStatusClient carboneStatusClient) {
Expand All @@ -43,7 +43,7 @@ public String addTemplate(byte[] templateFile) throws CarboneException {
}

@Override
public boolean deleteTemplate(String templateId) throws CarboneException {
public boolean deleteTemplate(String templateId) throws CarboneException {
CarboneResponse carboneResponse = carboneTemplateClient.deleteTemplate(templateId);
return carboneResponse.isSuccess();
}
Expand All @@ -63,15 +63,15 @@ public String generateTemplateId(String path) {
e.printStackTrace();
return null;
}

MessageDigest digest;
try {
digest = MessageDigest.getInstance("SHA-256");
} catch (NoSuchAlgorithmException e) {
e.printStackTrace();
return null;
}

digest.update(fileBytes);
byte[] hashByte = digest.digest();
StringBuilder hexString = new StringBuilder();
Expand All @@ -86,8 +86,8 @@ public String generateTemplateId(String path) {
return null;
}
}
public CarboneDocument render(String Json, String fileOrTemplateID) throws CarboneException
{

public CarboneDocument render(String Json, String fileOrTemplateID) throws CarboneException {
if (fileOrTemplateID.isEmpty()) {
throw new CarboneException("Carbone SDK render error: argument is missing: file_or_template_id");
}
Expand All @@ -98,14 +98,12 @@ public CarboneDocument render(String Json, String fileOrTemplateID) throws Carbo
File file = new File(fileOrTemplateID);
if (!file.exists()) {
resp = carboneRenderClient.renderReport(Json, fileOrTemplateID);
}
else {
} else {
try {
String templateId = generateTemplateId(fileOrTemplateID);
resp = carboneRenderClient.renderReport(Json, templateId);
} catch (CarboneException e) {
if(e.getHttpStatus() == 404)
{
if (e.getHttpStatus() == 404) {
try {
Path filePath = Paths.get(fileOrTemplateID);
CarboneResponse respAddTemplate = carboneTemplateClient.addTemplate(Files.readAllBytes(filePath));
Expand All @@ -117,8 +115,7 @@ public CarboneDocument render(String Json, String fileOrTemplateID) throws Carbo
} catch (IOException err) {
throw new CarboneException("Carbone SDK render error: failed to read template file");
}
}
else{
} else {
throw new CarboneException("Carbone SDK render error: failed to generate the template id");
}
}
Expand All @@ -127,16 +124,15 @@ public CarboneDocument render(String Json, String fileOrTemplateID) throws Carbo
throw new CarboneException("Carbone SDK render error: something went wrong");
}
if (!resp.isSuccess()) {
throw new CarboneException("Carbone SDK render error: render_id empty");
throw new CarboneException(String.format("Carbone SDK render error: %s", resp.getError()));
}
return getReport(resp.getData().getRenderId());
}


@Override
public String renderReport(String renderData, String templateId) throws CarboneException {
if(checkPathIsAbsolute(templateId))
{
if (checkPathIsAbsolute(templateId)) {
String newTemplateId = generateTemplateId(templateId);
CarboneResponse carboneResponse = carboneRenderClient.renderReport(renderData, newTemplateId);
return carboneResponse.getData().getRenderId();
Expand All @@ -150,18 +146,16 @@ public String renderReport(String renderData, String templateId) throws CarboneE
public CarboneDocument getReport(String renderId) throws CarboneException {
CarboneDocument response = carboneRenderClient.getReport(renderId);
return response;
}
}

@Override
public byte[] getTemplate(String templateId) throws CarboneException
{
public byte[] getTemplate(String templateId) throws CarboneException {
CarboneFileResponse response = carboneTemplateClient.getTemplate(templateId);
return response.getFileContent();
}

@Override
public String getStatus() throws CarboneException
{
public String getStatus() throws CarboneException {
Response response = null;
try {
response = carboneStatusClient.getStatus();
Expand Down
Loading