Repository: cxf Updated Branches: refs/heads/3.0.x-fixes bf04ea01f -> ce3b4bb1a
Adding missing jwk enums Project: http://git-wip-us.apache.org/repos/asf/cxf/repo Commit: http://git-wip-us.apache.org/repos/asf/cxf/commit/ce3b4bb1 Tree: http://git-wip-us.apache.org/repos/asf/cxf/tree/ce3b4bb1 Diff: http://git-wip-us.apache.org/repos/asf/cxf/diff/ce3b4bb1 Branch: refs/heads/3.0.x-fixes Commit: ce3b4bb1a3a7a1e4e2aa0197fc58a42aee796503 Parents: 106ffec Author: Sergey Beryozkin <sberyoz...@talend.com> Authored: Wed Jun 10 17:38:26 2015 +0100 Committer: Sergey Beryozkin <sberyoz...@talend.com> Committed: Wed Jun 10 17:39:33 2015 +0100 ---------------------------------------------------------------------- .../cxf/rs/security/jose/jwk/KeyOperation.java | 46 ++++++++++++++++++++ .../cxf/rs/security/jose/jwk/KeyType.java | 44 +++++++++++++++++++ .../cxf/rs/security/jose/jwk/PublicKeyUse.java | 46 ++++++++++++++++++++ 3 files changed, 136 insertions(+) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/cxf/blob/ce3b4bb1/rt/rs/security/jose/src/main/java/org/apache/cxf/rs/security/jose/jwk/KeyOperation.java ---------------------------------------------------------------------- diff --git a/rt/rs/security/jose/src/main/java/org/apache/cxf/rs/security/jose/jwk/KeyOperation.java b/rt/rs/security/jose/src/main/java/org/apache/cxf/rs/security/jose/jwk/KeyOperation.java new file mode 100644 index 0000000..c258543 --- /dev/null +++ b/rt/rs/security/jose/src/main/java/org/apache/cxf/rs/security/jose/jwk/KeyOperation.java @@ -0,0 +1,46 @@ +/** + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ +package org.apache.cxf.rs.security.jose.jwk; + + +public enum KeyOperation { + SIGN(JsonWebKey.KEY_OPER_SIGN), + VERIFY(JsonWebKey.KEY_OPER_VERIFY), + ENCRYPT(JsonWebKey.KEY_OPER_ENCRYPT), + DECRYPT(JsonWebKey.KEY_OPER_DECRYPT), + WRAPKEY(JsonWebKey.KEY_OPER_WRAP_KEY), + UNWRAPKEY(JsonWebKey.KEY_OPER_UNWRAP_KEY), + DERIVEKEY(JsonWebKey.KEY_OPER_DERIVE_KEY), + DERIVEBITS(JsonWebKey.KEY_OPER_DERIVE_BITS); + + private final String oper; + private KeyOperation(String oper) { + this.oper = oper; + } + public static KeyOperation getKeyOperation(String oper) { + if (oper == null) { + return null; + } + return valueOf(oper.toUpperCase()); + } + public String toString() { + return oper; + } + +} http://git-wip-us.apache.org/repos/asf/cxf/blob/ce3b4bb1/rt/rs/security/jose/src/main/java/org/apache/cxf/rs/security/jose/jwk/KeyType.java ---------------------------------------------------------------------- diff --git a/rt/rs/security/jose/src/main/java/org/apache/cxf/rs/security/jose/jwk/KeyType.java b/rt/rs/security/jose/src/main/java/org/apache/cxf/rs/security/jose/jwk/KeyType.java new file mode 100644 index 0000000..b10afb8 --- /dev/null +++ b/rt/rs/security/jose/src/main/java/org/apache/cxf/rs/security/jose/jwk/KeyType.java @@ -0,0 +1,44 @@ +/** + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ +package org.apache.cxf.rs.security.jose.jwk; + + +public enum KeyType { + RSA(JsonWebKey.KEY_TYPE_RSA), + EC(JsonWebKey.KEY_TYPE_ELLIPTIC), + OCTET(JsonWebKey.KEY_TYPE_OCTET); + + private final String type; + private KeyType(String type) { + this.type = type; + } + public static KeyType getKeyType(String type) { + if (type == null) { + return null; + } else if (JsonWebKey.KEY_TYPE_OCTET.equals(type)) { + return OCTET; + } else { + return valueOf(type); + } + } + public String toString() { + return type; + } + +} http://git-wip-us.apache.org/repos/asf/cxf/blob/ce3b4bb1/rt/rs/security/jose/src/main/java/org/apache/cxf/rs/security/jose/jwk/PublicKeyUse.java ---------------------------------------------------------------------- diff --git a/rt/rs/security/jose/src/main/java/org/apache/cxf/rs/security/jose/jwk/PublicKeyUse.java b/rt/rs/security/jose/src/main/java/org/apache/cxf/rs/security/jose/jwk/PublicKeyUse.java new file mode 100644 index 0000000..9b46b4f --- /dev/null +++ b/rt/rs/security/jose/src/main/java/org/apache/cxf/rs/security/jose/jwk/PublicKeyUse.java @@ -0,0 +1,46 @@ +/** + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ +package org.apache.cxf.rs.security.jose.jwk; + + +public enum PublicKeyUse { + SIGN(JsonWebKey.PUBLIC_KEY_USE_SIGN), + ENCRYPT(JsonWebKey.PUBLIC_KEY_USE_ENCRYPT); + + private final String use; + private PublicKeyUse(String use) { + this.use = use; + } + public static PublicKeyUse getPublicKeyUse(String use) { + if (use == null) { + return null; + } + if (JsonWebKey.PUBLIC_KEY_USE_SIGN.equals(use)) { + return SIGN; + } else if (JsonWebKey.PUBLIC_KEY_USE_ENCRYPT.equals(use)) { + return ENCRYPT; + } else { + return valueOf(use); + } + } + public String toString() { + return use; + } + +}