1 /**********************************************************************
2 * Copyright (c) 2012, 2013 Ericsson
4 * All rights reserved. This program and the accompanying materials are
5 * made available under the terms of the Eclipse Public License v1.0 which
6 * accompanies this distribution, and is available at
7 * http://www.eclipse.org/legal/epl-v10.html
10 * Bernd Hufmann - Initial API and implementation
11 **********************************************************************/
13 package org
.eclipse
.linuxtools
.internal
.lttng2
.ui
.views
.control
.model
.impl
;
15 import java
.util
.Iterator
;
16 import java
.util
.List
;
18 import org
.eclipse
.linuxtools
.internal
.lttng2
.core
.control
.model
.IBaseEventInfo
;
19 import org
.eclipse
.linuxtools
.internal
.lttng2
.ui
.views
.control
.messages
.Messages
;
20 import org
.eclipse
.linuxtools
.internal
.lttng2
.ui
.views
.control
.model
.ITraceControlComponent
;
21 import org
.eclipse
.linuxtools
.internal
.lttng2
.ui
.views
.control
.property
.KernelProviderPropertySource
;
22 import org
.eclipse
.ui
.views
.properties
.IPropertySource
;
26 * Implementation of the Kernel provider component.
29 * @author Bernd Hufmann
31 public class KernelProviderComponent
extends TraceControlComponent
{
33 // ------------------------------------------------------------------------
35 // ------------------------------------------------------------------------
38 * Path to icon file for this component.
40 public static final String KERNEL_PROVIDER_ICON_FILE
= "icons/obj16/targets.gif"; //$NON-NLS-1$
42 // ------------------------------------------------------------------------
44 // ------------------------------------------------------------------------
48 * @param name - the name of the component.
49 * @param parent - the parent of this component.
51 public KernelProviderComponent(String name
, ITraceControlComponent parent
) {
53 setToolTip(Messages
.TraceControl_ProviderDisplayName
);
54 setImage(KERNEL_PROVIDER_ICON_FILE
);
57 // ------------------------------------------------------------------------
59 // ------------------------------------------------------------------------
62 * Sets the events information for this component.
63 * @param eventInfos - events information to set.
65 public void setEventInfo(List
<IBaseEventInfo
> eventInfos
) {
66 for (Iterator
<IBaseEventInfo
> iterator
= eventInfos
.iterator(); iterator
.hasNext();) {
67 IBaseEventInfo baseEventInfo
= iterator
.next();
68 BaseEventComponent component
= new BaseEventComponent(baseEventInfo
.getName(), this);
69 component
.setEventInfo(baseEventInfo
);
75 public Object
getAdapter(Class adapter
) {
76 if (adapter
== IPropertySource
.class) {
77 return new KernelProviderPropertySource(this);