aboutsummaryrefslogtreecommitdiffstats
path: root/certService/src/main/java/org/onap/aaf/certservice/cmpv2client/external/Rdn.java
diff options
context:
space:
mode:
Diffstat (limited to 'certService/src/main/java/org/onap/aaf/certservice/cmpv2client/external/Rdn.java')
-rw-r--r--certService/src/main/java/org/onap/aaf/certservice/cmpv2client/external/Rdn.java157
1 files changed, 0 insertions, 157 deletions
diff --git a/certService/src/main/java/org/onap/aaf/certservice/cmpv2client/external/Rdn.java b/certService/src/main/java/org/onap/aaf/certservice/cmpv2client/external/Rdn.java
deleted file mode 100644
index 25017b8a..00000000
--- a/certService/src/main/java/org/onap/aaf/certservice/cmpv2client/external/Rdn.java
+++ /dev/null
@@ -1,157 +0,0 @@
-/*
- * ============LICENSE_START====================================================
- * org.onap.aaf
- * ===========================================================================
- * Copyright (c) 2018 AT&T Intellectual Property. All rights reserved.
- *
- * Modifications Copyright (C) 2019 IBM.
- * ===========================================================================
- * Licensed 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.
- * ============LICENSE_END====================================================
- *
- */
-
-package org.onap.aaf.certservice.cmpv2client.external;
-
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.List;
-import java.util.stream.Collectors;
-
-import org.bouncycastle.asn1.ASN1ObjectIdentifier;
-import org.bouncycastle.asn1.x500.style.BCStyle;
-import org.bouncycastle.cert.CertException;
-
-public class Rdn {
-
- private String tag;
- private String value;
- private ASN1ObjectIdentifier aoi;
-
- public String getValue() {
- return value;
- }
-
- public Rdn(final String tag, final String value) throws CertException {
- this.tag = tag;
- this.value = value;
- this.aoi = getAoi(tag);
- }
-
- public Rdn(final String tagValue) throws CertException {
- List<String> tv = parseRdn("=", tagValue);
- this.tag = tv.get(0);
- this.value = tv.get(1);
- this.aoi = getAoi(this.tag);
- }
-
- /**
- * Splits RDN as string by given delimiter, then trims every part.
- *
- * @param splitBy Delimiter which splits value
- * @param value Value to be splitted
- * @return List of splitted and trimmed strings
- */
- static List<String> parseRdn(String splitBy, String value) {
- String[] splitted = value.split(splitBy);
- return Arrays.stream(splitted)
- .map(String::trim)
- .collect(Collectors.toList());
- }
- /**
- * Parse various forms of DNs into appropriate RDNs, which have the ASN1ObjectIdentifier
- *
- * @param delim
- * @param dnString
- * @return
- * @throws CertException
- */
-
- public static List<Rdn> parse(final char delim, final String dnString) throws CertException {
- List<Rdn> lrnd = new ArrayList<>();
- StringBuilder sb = new StringBuilder();
- boolean inQuotes = false;
- for (int i = 0; i < dnString.length(); ++i) {
- char currentCharacter = dnString.charAt(i);
- if (inQuotes) {
- if ('"' == currentCharacter) {
- inQuotes = false;
- } else {
- sb.append(dnString.charAt(i));
- }
- } else {
- if ('"' == currentCharacter) {
- inQuotes = true;
- } else if (delim == currentCharacter) {
- if (sb.length() > 0) {
- lrnd.add(new Rdn(sb.toString()));
- sb.setLength(0);
- }
- } else {
- sb.append(dnString.charAt(i));
- }
- }
- }
- if (sb.indexOf("=") > 0) {
- lrnd.add(new Rdn(sb.toString()));
- }
- return lrnd;
- }
-
- @Override
- public String toString() {
- return tag + '=' + value;
- }
-
- ASN1ObjectIdentifier getAoi() {
- return aoi;
- }
-
- ASN1ObjectIdentifier getAoi(String tag) throws CertException {
- switch (tag.toLowerCase()) {
- case "cn":
- return BCStyle.CN;
- case "c":
- return BCStyle.C;
- case "st":
- return BCStyle.ST;
- case "l":
- return BCStyle.L;
- case "o":
- return BCStyle.O;
- case "ou":
- return BCStyle.OU;
- case "dc":
- return BCStyle.DC;
- case "gn":
- return BCStyle.GIVENNAME;
- case "sn":
- return BCStyle.SN;
- case "email":
- case "e":
- case "emailaddress":
- return BCStyle.EmailAddress;
- case "initials":
- return BCStyle.INITIALS;
- case "pseudonym":
- return BCStyle.PSEUDONYM;
- case "generationqualifier":
- return BCStyle.GENERATION;
- case "serialnumber":
- return BCStyle.SERIALNUMBER;
- default:
- throw new CertException(
- "Unknown ASN1ObjectIdentifier for tag " + tag);
- }
- }
-}