public SecurityProviderDiceEmulator()

in provisioning/security/dice-provider-emulator/src/main/java/com/microsoft/azure/sdk/iot/provisioning/security/hsm/SecurityProviderDiceEmulator.java [66:99]


    public SecurityProviderDiceEmulator(String commonNameAlias, String commonNameSigner, String commonNameRoot) throws SecurityProviderException
    {
        //SRS_SecurityClientDiceEmulator_25_003: [ Constructor shall throw SecurityProviderException if Alias Certificate, Signer Certificate and Root certificate names are null or empty ]
        if (commonNameAlias == null || commonNameAlias.isEmpty())
        {
            throw new SecurityProviderException(new IllegalArgumentException("commonNameAlias cannot be null or empty"));
        }

        if (commonNameSigner == null || commonNameSigner.isEmpty())
        {
            throw new SecurityProviderException(new IllegalArgumentException("commonNameSigner cannot be null or empty"));
        }

        if (commonNameRoot == null || commonNameRoot.isEmpty())
        {
            throw new SecurityProviderException(new IllegalArgumentException("commonNameRoot cannot be null or empty"));
        }

        //SRS_SecurityClientDiceEmulator_25_004: [ Constructor shall throw SecurityProviderException if Alias Certificate, Signer Certificate and Root certificate names are not unique ]
        if (commonNameAlias.equals(commonNameSigner) || commonNameSigner.equals(commonNameRoot) || commonNameAlias.equals(commonNameRoot))
        {
            throw new SecurityProviderException(new IllegalArgumentException("Use unique names for common name"));
        }

        this.commonNameAlias = commonNameAlias;
        this.commonNameSigner = commonNameSigner;
        this.commonNameRoot = commonNameRoot;

        this.diceBundle = RIoT.CreateDeviceAuthBundle(
                SEED,
                FWID,
                false,
                this.commonNameRoot, this.commonNameSigner, this.commonNameAlias);
    }