Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(2087)

Unified Diff: Source/modules/crypto/Algorithm.cpp

Issue 18033004: WebCrypto: Add WebKit API structure for keys. (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: rebase onto master Created 7 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « Source/modules/crypto/Algorithm.h ('k') | Source/modules/crypto/CryptoOperation.cpp » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: Source/modules/crypto/Algorithm.cpp
diff --git a/Source/modules/crypto/Algorithm.cpp b/Source/modules/crypto/Algorithm.cpp
index c6a9b8e3b5296b68683bbf241b1745938bba2630..a541110040a08af63d25bfa889e1237d4e28ea2f 100644
--- a/Source/modules/crypto/Algorithm.cpp
+++ b/Source/modules/crypto/Algorithm.cpp
@@ -31,19 +31,34 @@
#include "config.h"
#include "modules/crypto/Algorithm.h"
+#include "modules/crypto/AesCbcParams.h"
+#include "modules/crypto/AesKeyGenParams.h"
+
namespace WebCore {
+PassRefPtr<Algorithm> Algorithm::create(const WebKit::WebCryptoAlgorithm& algorithm)
+{
+ switch (algorithm.paramsType()) {
+ case WebKit::WebCryptoAlgorithmParamsTypeNone:
+ return adoptRef(new Algorithm(algorithm));
+ case WebKit::WebCryptoAlgorithmParamsTypeAesCbcParams:
+ return AesCbcParams::create(algorithm);
+ case WebKit::WebCryptoAlgorithmParamsTypeAesKeyGenParams:
+ return AesKeyGenParams::create(algorithm);
+ }
+ ASSERT_NOT_REACHED();
+ return 0;
+}
+
Algorithm::Algorithm(const WebKit::WebCryptoAlgorithm& algorithm)
: m_algorithm(algorithm)
{
ScriptWrappable::init(this);
}
-const String& Algorithm::name()
+String Algorithm::name()
{
- if (m_name.isNull())
- m_name = m_algorithm.algorithmName();
- return m_name;
+ return ASCIILiteral(m_algorithm.algorithmName());
}
} // namespace WebCore
« no previous file with comments | « Source/modules/crypto/Algorithm.h ('k') | Source/modules/crypto/CryptoOperation.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698