1 /*
2 * This file is part of dependency-check-core.
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 *
8 * http://www.apache.org/licenses/LICENSE-2.0
9 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 *
16 * Copyright (c) 2019 Jeremy Long. All Rights Reserved.
17 */
18 package org.owasp.dependencycheck.dependency.naming;
19
20 import java.io.Serializable;
21 import org.owasp.dependencycheck.dependency.Confidence;
22
23 /**
24 * The Identifier used to label dependencies. Examples of identifiers include
25 * Maven Group Artifact Version coordinates or the NVD's Common Platform
26 * Enumeration.
27 *
28 * @author Jeremy Long
29 */
30 public interface Identifier extends Comparable<Identifier>, Serializable {
31
32 /**
33 * Get the value of confidence.
34 *
35 * @return the value of confidence
36 */
37 Confidence getConfidence();
38
39 /**
40 * Set the value of confidence.
41 *
42 * @param confidence the value of confidence
43 */
44 void setConfidence(Confidence confidence);
45
46 /**
47 * Get the value of URL.
48 *
49 * @return the value of URL
50 */
51 String getUrl();
52
53 /**
54 * Set the value of URL.
55 *
56 * @param url the value of URL
57 */
58 void setUrl(String url);
59
60 /**
61 * Get the value of notes from suppression notes.
62 *
63 * @return the value of notes
64 */
65 String getNotes();
66
67 /**
68 * Get the string representation of the Identifier.
69 *
70 * @return the value of notes
71 */
72 String getValue();
73
74 /**
75 * Set the value of notes.
76 *
77 * @param notes new value of notes
78 */
79 void setNotes(String notes);
80
81 }