Page MenuHomec4science

TestResultEncoded.java
No OneTemporary

File Metadata

Created
Sat, Feb 8, 18:04

TestResultEncoded.java

package framework.test;
import crypto.elgamal.ECElGamal;
import crypto.elgamal.fragment.FragmentEncoded;
import crypto.elgamal.fragment.FragmentEncrypted;
import crypto.elgamal.fragment.FragmentPartial;
import crypto.elgamal.fragment.FragmentPartialEncoded;
public class TestResultEncoded {
private FragmentEncoded resultGenomic;
private FragmentEncoded resultClinical;
public TestResultEncoded(FragmentEncrypted resultGenomic, FragmentEncrypted resultClinical) {
this.resultGenomic = resultGenomic.getFragmentEncoded();
this.resultClinical = resultClinical.getFragmentEncoded();
}
public TestResultEncoded(TestResultEncrypted resultEncrypted) {
this.resultGenomic = resultEncrypted.getGenomic().getFragmentEncoded();
FragmentEncrypted fragClinical = resultEncrypted.getClinical();
this.resultClinical = (fragClinical == null)? null : fragClinical.getFragmentEncoded();
}
public FragmentEncoded getGenomic() {
return resultGenomic;
}
public FragmentEncoded getClinical() {
return resultClinical;
}
public TestResultPartialEncoded getTestPartialEncoded(ECElGamal cryptoEng) {
FragmentEncrypted encryptedGenomic = resultGenomic.decodeFragment(cryptoEng);
FragmentPartial partialGenomic = cryptoEng.partialDecrypt(encryptedGenomic);
FragmentPartialEncoded partialGenomicEncoded = partialGenomic.getFragmentPartialEncoded();
FragmentPartialEncoded partialClinicalEncoded = null;
if (resultClinical != null) { // does not necessarily have clinical result
FragmentEncrypted encryptedClinical = resultClinical.decodeFragment(cryptoEng);
FragmentPartial partialClinical = cryptoEng.partialDecrypt(encryptedClinical);
partialClinicalEncoded = partialClinical.getFragmentPartialEncoded();
}
return new TestResultPartialEncoded(partialGenomicEncoded, partialClinicalEncoded);
}
}

Event Timeline