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 Art
artifact
protected String
artifactName
-
Constructor Summary
Constructors Modifier Constructor Description CompressedArtifact(String artifactName, Art artifact)
protected
CompressedArtifact(String artifactName, org.json.JSONObject artifact, boolean getCode)
-
Method Summary
Modifier and Type Method Description org.json.JSONObject
compress()
Captura as informações do artefato viagetMap()
e retorna umJSONObject
com essas informações.protected Integer
computeHashCode()
protected <T extends org.bouncycastle.util.Encodable>
StringencodedToBase64String(T obj)
boolean
equals(Object obj)
Art
getArtifact()
protected static Integer
getCode(org.json.JSONObject info)
protected static String
getEncoded(org.json.JSONObject info)
protected static String
getExtraEncoded(org.json.JSONObject info)
protected static String
getExtraName(org.json.JSONObject info)
protected abstract Map<String,Serializable>
getMap()
Retorna umMap
com as informações do artefato.protected static String
getName(org.json.JSONObject info)
protected <T extends Serializable>
SerializablegetNullable(T data)
protected static String
getSource(org.json.JSONObject info)
boolean
hasArtifact()
int
hashCode()
protected abstract Art
parseArtifact(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> 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.protected String
toBase64(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 @CompressedArtifact
a ser criada.- Returns:
- Um
Map
com 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 @CompressedArtifact
a ser criada.- Returns:
- O artefato parseado.
-
getMap
Retorna umMap
com as informações do artefato.- Returns:
- Um
Map
com 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
-JSONObject
relativo 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 umJSONObject
com essas informações.- Returns:
- Um
JSONObject
com 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
-