Ejemplo n.º 1
0
    public static int Main(string[] args)
    {
        gdcm.Global global = gdcm.Global.GetInstance();
        if (!global.LoadResourcesFiles())
        {
            System.Console.WriteLine("Could not LoadResourcesFiles");
            return(1);
        }

        string file1  = args[0];
        string file2  = args[1];
        Reader reader = new Reader();

        reader.SetFileName(file1);
        bool ret = reader.Read();

        if (!ret)
        {
            return(1);
        }

        string certpath = gdcm.Filename.Join(gdcm.Testing.GetSourceDirectory(), "/Testing/Source/Data/certificate.pem");

        gdcm.CryptoFactory fact             = gdcm.CryptoFactory.GetFactoryInstance();
        gdcm.CryptographicMessageSyntax cms = fact.CreateCMSProvider();
        if (!cms.ParseCertificateFile(certpath))
        {
            return(1);
        }

        //Anonymizer ano = new Anonymizer();
        SmartPtrAno sano = Anonymizer.New();
        Anonymizer  ano  = sano.__ref__();

        //SimpleSubjectWatcher watcher = new SimpleSubjectWatcher(ano, "Anonymizer");
        MyWatcher watcher = new MyWatcher(ano);

        ano.SetFile(reader.GetFile());
        ano.SetCryptographicMessageSyntax(cms);
        if (!ano.BasicApplicationLevelConfidentialityProfile())
        {
            return(1);
        }

        Writer writer = new Writer();

        writer.SetFileName(file2);
        writer.SetFile(ano.GetFile());
        ret = writer.Write();
        if (!ret)
        {
            return(1);
        }

        return(0);
    }