summaryrefslogtreecommitdiffstats
path: root/gerrit-gwtui/src/main/java/com/google/gerrit/client/account/SshHostKeyPanel.java
blob: 2dfc2eddbf187d02487d44c26d668df6f81bf6fc (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
// Copyright (C) 2008 The Android Open Source Project
//
// 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.

package com.google.gerrit.client.account;

import com.google.gerrit.client.Gerrit;
import com.google.gerrit.client.ui.SmallHeading;
import com.google.gerrit.common.data.SshHostKey;
import com.google.gwt.user.client.ui.Composite;
import com.google.gwt.user.client.ui.FlowPanel;
import com.google.gwt.user.client.ui.HTML;
import com.google.gwt.user.client.ui.Label;
import com.google.gwtexpui.clippy.client.CopyableLabel;

class SshHostKeyPanel extends Composite {
  SshHostKeyPanel(SshHostKey info) {
    final FlowPanel body = new FlowPanel();
    body.setStyleName(Gerrit.RESOURCES.css().sshHostKeyPanel());
    body.add(new SmallHeading(Util.C.sshHostKeyTitle()));
    {
      final Label fpLbl = new Label(Util.C.sshHostKeyFingerprint());
      fpLbl.setStyleName(Gerrit.RESOURCES.css().sshHostKeyPanelHeading());
      body.add(fpLbl);
      final Label fpVal = new Label(info.getFingerprint());
      fpVal.setStyleName(Gerrit.RESOURCES.css().sshHostKeyPanelFingerprintData());
      body.add(fpVal);
    }
    {
      final HTML hdr = new HTML(Util.C.sshHostKeyKnownHostEntry());
      hdr.setStyleName(Gerrit.RESOURCES.css().sshHostKeyPanelHeading());
      body.add(hdr);

      final CopyableLabel lbl;
      lbl = new CopyableLabel(info.getHostIdent() + " " + info.getHostKey());
      lbl.setPreviewText(SshPanel.elide(lbl.getText(), 80));
      lbl.addStyleName(Gerrit.RESOURCES.css().sshHostKeyPanelKnownHostEntry());
      body.add(lbl);
    }
    initWidget(body);
  }
}