Skip to content

Commit

Permalink
Change property types to List/Set of String
Browse files Browse the repository at this point in the history
  • Loading branch information
MaximPlusov committed May 15, 2024
1 parent 150af84 commit e6bb2a3
Show file tree
Hide file tree
Showing 19 changed files with 50 additions and 56 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -99,7 +99,7 @@ public boolean isLastParsedContainsTransparency() {
public List<org.verapdf.model.operator.Operator> operatorsFromTokens(List<Object> rawTokens,
PDResourcesHandler resourcesHandler, GraphicState inheritedGraphicState,
StructureElementAccessObject structureElementAccessObject, COSObject parentStructElem,
String parentsTags, boolean isRealContent) {
List<String> parentsTags, boolean isRealContent) {
this.isLastParsedContainsTransparency = false;
OperatorParser parser = new OperatorParser(inheritedGraphicState, structureElementAccessObject, resourcesHandler,
parentStructElem, parentsTags, isRealContent);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -95,7 +95,7 @@ class OperatorParser {
private final StructureElementAccessObject structureElementAccessObject;
private final TransparencyGraphicsState transparencyGraphicState = new TransparencyGraphicsState();
private final COSObject parentStructElem;
private final String parentsTags;
private final List<String> parentsTags;

private final boolean isRealContent;

Expand All @@ -104,7 +104,7 @@ class OperatorParser {
OperatorParser(GraphicState inheritedGraphicState,
StructureElementAccessObject structureElementAccessObject,
PDResourcesHandler resourcesHandler, COSObject parentStructElem,
String parentsTags, boolean isRealContent) {
List<String> parentsTags, boolean isRealContent) {
if (inheritedGraphicState == null) {
this.graphicState = new GraphicState(resourcesHandler);
} else {
Expand Down Expand Up @@ -527,7 +527,7 @@ void parseOperator(List<org.verapdf.model.operator.Operator> processedOperators,
// XOBJECT
case Operators.DO:
Long mcid = null;
String parentsTags = "";
List<String> parentsTags = new LinkedList<>();
if (!markedContentStack.empty()) {
mcid = markedContentStack.peek().getInheritedMCID();
parentsTags = markedContentStack.peek().getParentsTags();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,7 @@

import java.util.ArrayList;
import java.util.Collections;
import java.util.LinkedList;
import java.util.List;

/**
Expand All @@ -53,11 +54,11 @@ public abstract class GFOpMarkedContent extends GFOperator implements OpMarkedCo

private COSDictionary propertiesDict;
private final GFOpMarkedContent markedContent;
private final String parentsTags;
private final List<String> parentsTags;
private final boolean isRealContent;

public GFOpMarkedContent(List<COSBase> arguments, final String opType,
GFOpMarkedContent markedContent, String parentsTags, boolean isRealContent) {
GFOpMarkedContent markedContent, List<String> parentsTags, boolean isRealContent) {
super(arguments, opType);
this.markedContent = markedContent;
this.parentsTags = parentsTags;
Expand Down Expand Up @@ -138,28 +139,15 @@ public COSString getLang() {
return lang != null ? (COSString) lang.getDirectBase() : null;
}

public String getParentsTags() {
public List<String> getParentsTags() {
COSName tagName = getTag();
String tag = "";
if (tagName != null) {
tag = tagName.getString();
}
String parentsTags = "";
String tag = tagName != null ? tagName.getString() : "";
List<String> parentsTags = new LinkedList<>(this.parentsTags);
if (markedContent != null) {
parentsTags = markedContent.getParentsTags();
}
if (parentsTags.isEmpty()) {
parentsTags = this.parentsTags;
} else if (!this.parentsTags.isEmpty()) {
parentsTags = this.parentsTags + '&' + parentsTags;
}
if (tag.isEmpty()) {
return parentsTags;
}
if (parentsTags.isEmpty()) {
return tag;
parentsTags.addAll(markedContent.getParentsTags());
}
return parentsTags + '&' + tag;
parentsTags.add(tag);
return parentsTags;
}

public String getInheritedLang() {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,7 @@ public class GFOp_BDC extends GFOpMarkedContent implements Op_BDC {


public GFOp_BDC(List<COSBase> arguments, PDResourcesHandler resources, GFOpMarkedContent markedContent,
StructureElementAccessObject structureElementAccessObject, String parentsTags, boolean isRealContent) {
StructureElementAccessObject structureElementAccessObject, List<String> parentsTags, boolean isRealContent) {
super(arguments, OP_BDC_TYPE, markedContent, parentsTags, isRealContent);
initializePropertiesDict(resources);
this.structureElementAccessObject = structureElementAccessObject;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ public class GFOp_BMC extends GFOpMarkedContent implements Op_BMC {
/** Type name for {@code GFOp_BMC} */
public static final String OP_BMC_TYPE = "Op_BMC";

public GFOp_BMC(List<COSBase> arguments, GFOpMarkedContent markedContent, String parentsTags, boolean isRealContent) {
public GFOp_BMC(List<COSBase> arguments, GFOpMarkedContent markedContent, List<String> parentsTags, boolean isRealContent) {
super(arguments, OP_BMC_TYPE, markedContent, parentsTags, isRealContent);
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@
import org.verapdf.model.baselayer.Object;
import org.verapdf.model.operator.Op_DP;

import java.util.Collections;
import java.util.List;

/**
Expand All @@ -36,7 +37,7 @@ public class GFOp_DP extends GFOpMarkedContent implements Op_DP {
public static final String OP_DP_TYPE = "Op_DP";

public GFOp_DP(List<COSBase> arguments, PDResourcesHandler resources) {
super(arguments, OP_DP_TYPE, null, "", false);
super(arguments, OP_DP_TYPE, null, Collections.emptyList(), false);
initializePropertiesDict(resources);
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@
import org.verapdf.cos.COSBase;
import org.verapdf.model.operator.Op_EMC;

import java.util.Collections;
import java.util.List;

/**
Expand All @@ -34,7 +35,7 @@ public class GFOp_EMC extends GFOpMarkedContent implements Op_EMC {
public static final String OP_EMC_TYPE = "Op_EMC";

public GFOp_EMC(List<COSBase> arguments) {
super(arguments, OP_EMC_TYPE, null, "", false);
super(arguments, OP_EMC_TYPE, null, Collections.emptyList(), false);
}

}
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,7 @@
import org.verapdf.model.baselayer.Object;
import org.verapdf.model.operator.Op_MP;

import java.util.Collections;
import java.util.List;

/**
Expand All @@ -37,7 +38,7 @@ public class GFOp_MP extends GFOpMarkedContent implements Op_MP {
public static final String OP_MP_TYPE = "Op_MP";

public GFOp_MP(List<COSBase> arguments) {
super(arguments, OP_MP_TYPE, null, "", false);
super(arguments, OP_MP_TYPE, null, Collections.emptyList(), false);
}

@Override
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -51,11 +51,11 @@ public class GFOp_Do extends GFOperator implements Op_Do {
private final PDResourcesHandler resourcesHandler;
private final GraphicState inheritedGraphicState;
private final COSObject parentStructElem;
private final String parentsTags;
private final List<String> parentsTags;

public GFOp_Do(List<COSBase> arguments, org.verapdf.pd.images.PDXObject pdXObject,
PDResourcesHandler resourcesHandler, GraphicState inheritedGraphicState,
COSObject parentStructElem, String parentsTags) {
COSObject parentStructElem, List<String> parentsTags) {
super(arguments, OP_DO_TYPE);
this.pbXObject = pdXObject;
this.resourcesHandler = resourcesHandler;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -436,7 +436,7 @@ private void addAppearance(List<PDXForm> list, PDAppearanceStream toAdd) {
if (toAdd != null) {
PDResourcesHandler resources = this.resources.getExtendedResources(toAdd.getResources());
COSString annotLang = getLang();
GFPDXForm xForm = new GFPDXForm(toAdd, resources, null, getParentDictionary(), "",
GFPDXForm xForm = new GFPDXForm(toAdd, resources, null, getParentDictionary(), Collections.emptyList(),
annotLang == null ? null : annotLang.getString(), true, isSignature());
this.containsTransparency |= xForm.containsTransparency();
list.add(xForm);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -68,7 +68,7 @@ public class GFPDContentStream extends GFPDObject implements PDContentStream {
private final GraphicState inheritedGraphicState;
private final StructureElementAccessObject structureElementAccessObject;
protected COSObject parentStructElem;
protected String parentsTags;
protected List<String> parentsTags;

public GFPDContentStream(org.verapdf.pd.PDContentStream contentStream, PDResourcesHandler resourcesHandler,
GraphicState inheritedGraphicState,
Expand All @@ -79,7 +79,7 @@ public GFPDContentStream(org.verapdf.pd.PDContentStream contentStream, PDResourc
public GFPDContentStream(org.verapdf.pd.PDContentStream contentStream, PDResourcesHandler resourcesHandler,
GraphicState inheritedGraphicState,
StructureElementAccessObject structureElementAccessObject,
COSObject parentStructElem, String parentsTags) {
COSObject parentStructElem, List<String> parentsTags) {
this(contentStream, resourcesHandler, inheritedGraphicState, structureElementAccessObject,
parentStructElem, parentsTags, CONTENT_STREAM_TYPE);
}
Expand All @@ -91,14 +91,14 @@ public GFPDContentStream(org.verapdf.pd.PDContentStream contentStream, PDResourc
this.resourcesHandler = resourcesHandler;
this.inheritedGraphicState = inheritedGraphicState;
this.structureElementAccessObject = structureElementAccessObject;
parentsTags = "";
this.parentsTags = Collections.emptyList();
}

public GFPDContentStream(org.verapdf.pd.PDContentStream contentStream,
PDResourcesHandler resourcesHandler,
GraphicState inheritedGraphicState,
StructureElementAccessObject structureElementAccessObject,
COSObject parentStructElem, String parentsTags, final String type) {
COSObject parentStructElem, List<String> parentsTags, final String type) {
this(contentStream, resourcesHandler, inheritedGraphicState, structureElementAccessObject, type);
this.parentStructElem = getParentStructureElem(structureElementAccessObject);
if (this.parentStructElem == null) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -61,14 +61,14 @@ public GFPDSemanticContentStream(org.verapdf.pd.PDContentStream contentStream, P
public GFPDSemanticContentStream(org.verapdf.pd.PDContentStream contentStream, PDResourcesHandler resourcesHandler,
GraphicState inheritedGraphicState,
StructureElementAccessObject structureElementAccessObject,
COSObject parentStructElem, String parentsTags) {
COSObject parentStructElem, List<String> parentsTags) {
super(contentStream, resourcesHandler, inheritedGraphicState, structureElementAccessObject, parentStructElem,
parentsTags, SEMANTIC_CONTENT_STREAM_TYPE);
}

public GFPDSemanticContentStream(org.verapdf.pd.PDContentStream contentStream, PDResourcesHandler resourcesHandler,
GraphicState inheritedGraphicState, StructureElementAccessObject structureElementAccessObject,
COSObject parentStructElem, String parentsTags, String defaultLang, boolean isSignature) {
COSObject parentStructElem, List<String> parentsTags, String defaultLang, boolean isSignature) {
this(contentStream, resourcesHandler, inheritedGraphicState, structureElementAccessObject, parentStructElem,
parentsTags);
this.defaultLang = defaultLang;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -42,12 +42,12 @@ public abstract class GFSEGroupedContent extends GFSEContentItem implements SEGr

protected final List<Operator> operators;
protected final COSObject parentStructElem;
protected final String parentsTags;
protected final List<String> parentsTags;
protected final boolean isSignature;
protected final String defaultLang;
protected final Boolean isTaggedContent;

public GFSEGroupedContent(String objectType, List<Operator> operators, COSObject parentStructElem, String parentsTags, String defaultLang,
public GFSEGroupedContent(String objectType, List<Operator> operators, COSObject parentStructElem, List<String> parentsTags, String defaultLang,
boolean isSignature) {
super(objectType);
this.operators = operators;
Expand All @@ -59,7 +59,7 @@ public GFSEGroupedContent(String objectType, List<Operator> operators, COSObject
}

@Override
public String getparentsTags() {
public List<String> getparentsTags() {
return parentsTags;
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,7 @@ public class GFSEMarkedContent extends GFSEGroupedContent implements SEMarkedCon
private final GFOpMarkedContent operator;

public GFSEMarkedContent(GFOpMarkedContent operator, List<Operator> operators, COSObject parentStructElem,
String parentsTags, String defaultLang, boolean isSignature) {
List<String> parentsTags, String defaultLang, boolean isSignature) {
super(MARKED_CONTENT_TYPE, operators, getParentStructElement(parentStructElem, operator), parentsTags, defaultLang,
isSignature);
this.operator = operator;
Expand Down Expand Up @@ -165,7 +165,7 @@ public String getActualText() {
}

@Override
public String getparentsTags() {
public List<String> getparentsTags() {
return operator.getParentsTags();
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,8 @@
import org.verapdf.model.selayer.SESimpleContentItem;
import org.verapdf.tools.TaggedPDFConstants;

import java.util.List;

/**
* @author Maxim Plushchov
*/
Expand Down Expand Up @@ -54,7 +56,7 @@ public Boolean getisArtifact() {
}

@Override
public String getparentsTags() {
public List<String> getparentsTags() {
return groupedContent.getparentsTags();
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@ public class GFSEUnmarkedContent extends GFSEGroupedContent implements SEUnmarke

public static final String UNMARKED_CONTENT_TYPE = "SEUnmarkedContent";

public GFSEUnmarkedContent(List<Operator> operators, COSObject parentStructElem, String parentsTags,
public GFSEUnmarkedContent(List<Operator> operators, COSObject parentStructElem, List<String> parentsTags,
String defaultLang, boolean isSignature) {
super(UNMARKED_CONTENT_TYPE, operators, parentStructElem, parentsTags, defaultLang, isSignature);
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -62,15 +62,15 @@ public class GFPDXForm extends GFPDXObject implements PDXForm {
private boolean contentStreamContainsTransparency = false;
private final GraphicState inheritedGraphicState;
private final COSObject parentStructElem;
private final String parentsTags;
private final List<String> parentsTags;
private final String defaultLang;
private final PDColorSpace blendingColorSpace;

private final boolean isSignature;
private final boolean isAnnotation;

public GFPDXForm(org.verapdf.pd.images.PDXForm simplePDObject, PDResourcesHandler resourcesHandler,
GraphicState inheritedGraphicState, COSObject parentStructElem, String parentsTags,
GraphicState inheritedGraphicState, COSObject parentStructElem, List<String> parentsTags,
String defaultLang, boolean isAnnotation, boolean isSignature) {
super(simplePDObject, resourcesHandler.getExtendedResources(simplePDObject.getResources()), X_FORM_TYPE);
this.inheritedGraphicState = inheritedGraphicState;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,8 @@
import org.verapdf.pd.images.PDXForm;
import org.verapdf.pd.images.PDXImage;

import java.util.List;

/**
* @author Maksim Bezrukov
*/
Expand Down Expand Up @@ -66,7 +68,7 @@ public Boolean getcontainsSMask() {
}

public static PDXObject getTypedPDXObject(org.verapdf.pd.images.PDXObject xObject, PDResourcesHandler resources,
GraphicState inheritedGraphicState, COSObject parentStructElem, String parentsTags) {
GraphicState inheritedGraphicState, COSObject parentStructElem, List<String> parentsTags) {
ASAtom type = xObject.getType();
if (ASAtom.FORM.equals(type)) {
return new GFPDXForm((PDXForm) xObject, resources, inheritedGraphicState, parentStructElem, parentsTags, null, false, false);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -46,8 +46,8 @@ public GFSAObject(IObject object, String type) {
}

@Override
public String geterrorCodes() {
return errorCodes.stream().map(Objects::toString).collect(Collectors.joining(","));
public List<String> geterrorCodes() {
return errorCodes.stream().map(Objects::toString).collect(Collectors.toList());
}

public List<Integer> getErrorCodes() {
Expand All @@ -59,13 +59,12 @@ public List<List<Object>> getErrorArguments() {
}

@Override
public String geterrorArguments() {
StringBuilder string = new StringBuilder();
public List<List<String>> geterrorArguments() {
List<List<String>> list = new LinkedList<>();
for (List<Object> arguments : errorArguments) {
string.append(arguments.stream().map(Object::toString).collect(Collectors.joining(";")));
string.append(";;");
list.add(arguments.stream().map(Object::toString).collect(Collectors.toList()));
}
return string.toString();
return list;
}

@Override
Expand Down

0 comments on commit e6bb2a3

Please sign in to comment.