blob: e2dbf8953431e883e5ab33c7a8badbc80ce9b770 [file] [log] [blame]
sunish vk7bdf4d42016-06-24 12:29:43 +05301/*
Brian O'Connor0a4e6742016-09-15 23:03:10 -07002 * Copyright 2016-present Open Networking Laboratory
sunish vk7bdf4d42016-06-24 12:29:43 +05303 *
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 */
16package org.onosproject.isis.controller.topology;
17
18import org.onlab.packet.Ip4Address;
19
20/**
21 * Representation of an ISIS link information.
22 */
23public interface LinkInformation {
24
25 /**
26 * Gets link id.
27 *
28 * @return link id
29 */
30 String linkId();
31
32 /**
33 * Sets link id.
34 *
35 * @param linkId link id
36 */
37 void setLinkId(String linkId);
38
39 /**
40 * Gets whether link information is already created or not.
41 *
42 * @return true if link information is already created else false
43 */
44 boolean isAlreadyCreated();
45
46 /**
47 * Sets link information is already created or not.
48 *
49 * @param alreadyCreated true if link information is already created else false
50 */
51 void setAlreadyCreated(boolean alreadyCreated);
52
53
54 /**
55 * Returns link destination ID.
56 *
57 * @return link destination ID
58 */
59 String linkDestinationId();
60
61 /**
62 * Sets link destination id.
63 *
64 * @param linkDestinationId link destination id
65 */
66 void setLinkDestinationId(String linkDestinationId);
67
68 /**
69 * Gets link source id.
70 *
71 * @return link source id
72 */
73 String linkSourceId();
74
75 /**
76 * Sets link source id.
77 *
78 * @param linkSourceId link source id
79 */
80 void setLinkSourceId(String linkSourceId);
81
82 /**
83 * Gets interface ip address.
84 *
85 * @return interface ip address
86 */
87 Ip4Address interfaceIp();
88
89 /**
90 * Sets interface ip address.
91 *
92 * @param interfaceIp interface ip address
93 */
94 void setInterfaceIp(Ip4Address interfaceIp);
95
96 /**
97 * Gets neighbor ip address.
98 *
99 * @return neighbor ip address
100 */
101 Ip4Address neighborIp();
102
103 /**
104 * Sets neighbor ip address.
105 *
106 * @param neighborIp neighbor ip address
107 */
108 void setNeighborIp(Ip4Address neighborIp);
109}