Class CompressedArtifact<Art>
java.lang.Object
br.ufsc.labsec.signature.conformanceVerifier.report.verificationPackage.compressedArtifact.CompressedArtifact<Art>
- Type Parameters:
Art- Classe do artefato em questão.
- Direct Known Subclasses:
CompressedCommonSource,CompressedFileHash,CompressedLPA,CompressedPA,CompressedReceiptRequest,CompressedStamp,CompressedTrustAnchorCert
public abstract class CompressedArtifact<Art> extends Object
Classe que representa um artefato comprimido: armazena o nome do artefato,
o artefato em si e o seu código hash, além de ter métodos relacionados à
compressão e parsing do artefato.
Esta classe também serve de invólucro do artefato, a fim de evitar erros relacionados à nulidade deste objeto.
-
Field Summary
Fields Modifier and Type Field Description protected Artartifactprotected StringartifactName -
Constructor Summary
Constructors Modifier Constructor Description CompressedArtifact(String artifactName, Art artifact)protectedCompressedArtifact(String artifactName, org.json.JSONObject artifact, boolean getCode) -
Method Summary
Modifier and Type Method Description org.json.JSONObjectcompress()Captura as informações do artefato viagetMap()e retorna umJSONObjectcom essas informações.protected IntegercomputeHashCode()protected <T extends org.bouncycastle.util.Encodable>
StringencodedToBase64String(T obj)booleanequals(Object obj)ArtgetArtifact()protected static IntegergetCode(org.json.JSONObject info)protected static StringgetEncoded(org.json.JSONObject info)protected static StringgetExtraEncoded(org.json.JSONObject info)protected static StringgetExtraName(org.json.JSONObject info)protected abstract Map<String,Serializable>getMap()Retorna umMapcom as informações do artefato.protected static StringgetName(org.json.JSONObject info)protected <T extends Serializable>
SerializablegetNullable(T data)protected static StringgetSource(org.json.JSONObject info)booleanhasArtifact()inthashCode()protected abstract ArtparseArtifact(org.json.JSONObject artifact)Realiza o parsing de um artefato a partir de umJSONObject.protected static <Comp extends CompressedArtifact<?>>
Map<Integer,Comp>parseMultipleCompressed(org.json.JSONObject artifactsInfo, String artifactName, Function<org.json.JSONObject,Comp> constructor)Realiza o parsing de múltiplos artefatos de um pacote de verificação.protected static <Art> ArtparseSingleCompressed(org.json.JSONObject artifactsInfo, String artifactName, Function<org.json.JSONObject,CompressedArtifact<Art>> constructor)Realiza o parsing de um único artefato de um pacote de verificação.protected StringtoBase64(byte[] data)
-
Field Details
-
artifactName
-
artifact
-
-
Constructor Details
-
CompressedArtifact
-
CompressedArtifact
-
-
Method Details
-
parseMultipleCompressed
protected static <Comp extends CompressedArtifact<?>> Map<Integer,Comp> parseMultipleCompressed(org.json.JSONObject artifactsInfo, String artifactName, Function<org.json.JSONObject,Comp> constructor)Realiza o parsing de múltiplos artefatos de um pacote de verificação.- Type Parameters:
Comp- Classe do artefato comprimido.- Parameters:
artifactsInfo- Parte do pacote de verificação relativo a um dos arquivos verificados.artifactName- Chave do artefato emartifactsInfo.constructor- construtor da especialização de @CompressedArtifacta ser criada.- Returns:
- Um
Mapcom valores sendo os artefatos e chaves os seus códigos hash.
-
parseSingleCompressed
protected static <Art> Art parseSingleCompressed(org.json.JSONObject artifactsInfo, String artifactName, Function<org.json.JSONObject,CompressedArtifact<Art>> constructor)Realiza o parsing de um único artefato de um pacote de verificação.- Type Parameters:
Art- Classe do artefato a ser parseado.- Parameters:
artifactsInfo- Parte do pacote de verificação relativo a um dos arquivos verificados.artifactName- Chave do artefato emartifactsInfo.constructor- construtor da especialização de @CompressedArtifacta ser criada.- Returns:
- O artefato parseado.
-
getMap
Retorna umMapcom as informações do artefato.- Returns:
- Um
Mapcom as informações do artefato. - Throws:
IOException- Caso tenha havido um erro de I/O.EncodingException- Caso tenha havido um problema durante a extração dos bytes de uma assinatura referente a umaLpa.
-
parseArtifact
protected abstract Art parseArtifact(org.json.JSONObject artifact) throws IOException, org.json.JSONExceptionRealiza o parsing de um artefato a partir de umJSONObject.- Parameters:
artifact-JSONObjectrelativo ao artefato.- Returns:
- O artefato parseado.
- Throws:
IOException- Caso tenha havido um erro de I/O.org.json.JSONException- Caso tenha havido um erro no parsing doJSONObject.
-
hashCode
public final int hashCode() -
equals
-
getArtifact
-
hasArtifact
public final boolean hasArtifact() -
compress
public final org.json.JSONObject compress()Captura as informações do artefato viagetMap()e retorna umJSONObjectcom essas informações.- Returns:
- Um
JSONObjectcom as informações do artefato. - See Also:
getMap()
-
computeHashCode
-
toBase64
-
encodedToBase64String
protected <T extends org.bouncycastle.util.Encodable> String encodedToBase64String(T obj) throws IOException- Throws:
IOException
-
getNullable
-
getName
-
getExtraName
-
getCode
-
getSource
-
getEncoded
-
getExtraEncoded
-