You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ambari.apache.org by ma...@apache.org on 2013/10/18 02:25:32 UTC

[10/30] AMBARI-3266. Contribute Ambari-SCOM. (Tom Beerbower via mahadev)

http://git-wip-us.apache.org/repos/asf/incubator-ambari/blob/873b3502/contrib/ambari-scom/management-pack/Hadoop_MP/PresentationMp/Widgets/Standard/SingleRowSelectStateWidget.mpx
----------------------------------------------------------------------
diff --git a/contrib/ambari-scom/management-pack/Hadoop_MP/PresentationMp/Widgets/Standard/SingleRowSelectStateWidget.mpx b/contrib/ambari-scom/management-pack/Hadoop_MP/PresentationMp/Widgets/Standard/SingleRowSelectStateWidget.mpx
new file mode 100644
index 0000000..6423e0f
--- /dev/null
+++ b/contrib/ambari-scom/management-pack/Hadoop_MP/PresentationMp/Widgets/Standard/SingleRowSelectStateWidget.mpx
@@ -0,0 +1,336 @@
+<!--## Licensed to the Apache Software Foundation (ASF) under one
+## or more contributor license agreements.  See the NOTICE file
+## distributed with this work for additional information
+## regarding copyright ownership.  The ASF licenses this file
+## to you 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.-->
+
+<ManagementPackFragment SchemaVersion="2.0" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
+  <Presentation>
+    <ComponentTypes>
+      <ComponentType ID="Ambari.SCOM.Presentation.Widget.SingleRowSelectStateWidget" Accessibility="Internal">
+        <Property Name="SelectedEntities" Type="mpinstance://System.Library!System.Entity[]" BindingDirection="Both" />
+        <Property Name="AutoRefreshTickInterval" Type="xsd://int" BindingDirection="In" />
+        <Property Name="Columns" Type="xsd://Microsoft.SystemCenter.Visualization.Library!Microsoft.SystemCenter.Visualization.ColumnType/DataGridColumn[]" BindingDirection="Both">
+          <ComplexValueCollection Type="xsd://Microsoft.SystemCenter.Visualization.Library!Microsoft.SystemCenter.Visualization.ColumnType/DataGridColumn[]">
+            <ComplexValue Type="xsd://Microsoft.SystemCenter.Visualization.Library!Microsoft.SystemCenter.Visualization.ColumnType/DataGridColumn">
+              <Binding PropertyId="PropertyName">
+                <SimpleValue Type="xsd://string" Value="HealthState" />
+              </Binding>
+              <Binding PropertyId="HeaderDisplayObject">
+                <SimpleValue Type="xsd://string" Value="$MPReference/Microsoft.SystemCenter.Visualization.Library!Microsoft.SystemCenter.Visualization.Library.Entity.HealthState/DisplayName$" />
+              </Binding>
+              <Binding PropertyId="SortableGroupable">
+                <SimpleValue Type="xsd://boolean" Value="True" />
+              </Binding>
+              <Binding PropertyId="CanResize">
+                <SimpleValue Type="xsd://boolean" Value="True" />
+              </Binding>
+              <Binding PropertyId="Width">
+                <SimpleValue Type="xsd://string" Value="Auto" />
+              </Binding>
+              <Binding PropertyId="XPath">
+                <SimpleValue Type="xsd://string" Value="$Object/Property[Name='HealthState']$" />
+              </Binding>
+              <Binding PropertyId="SourceType">
+                <SimpleValue Type="xsd://string" Value="ManagedEntity" />
+              </Binding>
+            </ComplexValue>
+            <ComplexValue Type="xsd://Microsoft.SystemCenter.Visualization.Library!Microsoft.SystemCenter.Visualization.ColumnType/DataGridColumn">
+              <Binding PropertyId="PropertyName">
+                <SimpleValue Type="xsd://string" Value="DisplayName" />
+              </Binding>
+              <Binding PropertyId="HeaderDisplayObject">
+                <SimpleValue Type="xsd://string" Value="$MPReference/Microsoft.SystemCenter.Visualization.Library!Microsoft.SystemCenter.Visualization.Library.Entity.DisplayName/DisplayName$" />
+              </Binding>
+              <Binding PropertyId="SortableGroupable">
+                <SimpleValue Type="xsd://boolean" Value="True" />
+              </Binding>
+              <Binding PropertyId="CanResize">
+                <SimpleValue Type="xsd://boolean" Value="True" />
+              </Binding>
+              <Binding PropertyId="Width">
+                <SimpleValue Type="xsd://string" Value="Auto" />
+              </Binding>
+              <Binding PropertyId="XPath">
+                <SimpleValue Type="xsd://string" Value="$Object/PropertyCollection[Name='DisplayName']$" />
+              </Binding>
+              <Binding PropertyId="SourceType">
+                <SimpleValue Type="xsd://string" Value="ManagedEntity" />
+              </Binding>
+            </ComplexValue>
+            <ComplexValue Type="xsd://Microsoft.SystemCenter.Visualization.Library!Microsoft.SystemCenter.Visualization.ColumnType/DataGridColumn">
+              <Binding PropertyId="PropertyName">
+                <SimpleValue Type="xsd://string" Value="Path" />
+              </Binding>
+              <Binding PropertyId="HeaderDisplayObject">
+                <SimpleValue Type="xsd://string" Value="$MPReference/Microsoft.SystemCenter.Visualization.Library!Microsoft.SystemCenter.Visualization.Library.Entity.Path/DisplayName$" />
+              </Binding>
+              <Binding PropertyId="SortableGroupable">
+                <SimpleValue Type="xsd://boolean" Value="True" />
+              </Binding>
+              <Binding PropertyId="CanResize">
+                <SimpleValue Type="xsd://boolean" Value="True" />
+              </Binding>
+              <Binding PropertyId="Width">
+                <SimpleValue Type="xsd://string" Value="Auto" />
+              </Binding>
+              <Binding PropertyId="XPath">
+                <SimpleValue Type="xsd://string" Value="$Object/Property[Name='Path']$" />
+              </Binding>
+              <Binding PropertyId="SourceType">
+                <SimpleValue Type="xsd://string" Value="ManagedEntity" />
+              </Binding>
+            </ComplexValue>
+          </ComplexValueCollection>
+        </Property>
+        <Property Name="GroupedColumns" Type="xsd://Microsoft.SystemCenter.Visualization.Library!Microsoft.SystemCenter.Visualization.ColumnType/DataCollectionViewColumn[]" BindingDirection="Both" />
+        <Property Name="SortedColumns" Type="xsd://Microsoft.SystemCenter.Visualization.Library!Microsoft.SystemCenter.Visualization.ColumnType/DataCollectionViewColumn[]" BindingDirection="Both">
+          <ComplexValueCollection Type="xsd://Microsoft.SystemCenter.Visualization.Library!Microsoft.SystemCenter.Visualization.ColumnType/DataCollectionViewColumn[]">
+            <ComplexValue Type="xsd://Microsoft.SystemCenter.Visualization.Library!Microsoft.SystemCenter.Visualization.ColumnType/DataCollectionViewColumn">
+              <Binding PropertyId="PropertyName">
+                <SimpleValue Type="xsd://string" Value="DisplayName" />
+              </Binding>
+              <Binding PropertyId="HeaderDisplayObject">
+                <SimpleValue Type="xsd://string" Value="$MPReference/Microsoft.SystemCenter.Visualization.Library!Microsoft.SystemCenter.Visualization.Library.Entity.DisplayName/DisplayName$" />
+              </Binding>
+              <Binding PropertyId="SortDirection">
+                <SimpleValue Type="xsd://string" Value="Ascending" />
+              </Binding>
+              <Binding PropertyId="XPath">
+                <SimpleValue Type="xsd://string" Value="$Object/PropertyCollection[Name='DisplayName']$" />
+              </Binding>
+              <Binding PropertyId="SourceType">
+                <SimpleValue Type="xsd://string" Value="ManagedEntity" />
+              </Binding>
+            </ComplexValue>
+          </ComplexValueCollection>
+        </Property>
+        <!--<Property Name="Criteria" Type="xsd://string" BindingDirection="In" />-->
+        <Property Name="TargetIds" Type="xsd://Microsoft.SystemCenter.Visualization.Library!Microsoft.SystemCenter.Visualization.DataProvider/MPInstanceWithRecursionLevel[]" BindingDirection="In" />
+        <Property Name="BaseManagementPackTypes" Type="xsd://Microsoft.SystemCenter.Visualization.Library!Microsoft.SystemCenter.Visualization.OperationalDataTypes/BaseManagementPackType[]" BindingDirection="In" />
+        <Property Name="RecursionTypeNames" Type="xsd://Microsoft.SystemCenter.Visualization.Library!Microsoft.SystemCenter.Visualization.OperationalDataTypes/BaseManagementPackType[]" BindingDirection="In">
+          <ComplexValueCollection Type="xsd://Microsoft.SystemCenter.Visualization.Library!Microsoft.SystemCenter.Visualization.OperationalDataTypes/BaseManagementPackType[]">
+            <ComplexValue Type="xsd://Microsoft.SystemCenter.Visualization.Library!Microsoft.SystemCenter.Visualization.OperationalDataTypes/BaseManagementPackType">
+              <Binding PropertyId="FullyQualifiedName">
+                <SimpleValue Type="xsd://string" Value="System.Library!System.Group" />
+              </Binding>
+            </ComplexValue>
+          </ComplexValueCollection>
+        </Property>
+      </ComponentType>
+    </ComponentTypes>
+
+    <ComponentImplementations>
+      <ComponentImplementation ID="Ambari.SCOM.Presentation.Widget.SingleRowSelectStateWidgetImplementation"
+                               TypeId="Ambari.SCOM.Presentation.Widget.SingleRowSelectStateWidget"
+                               Platform="Wpf, Silverlight" Accessibility="Internal">
+        <Composite>
+          <Variable Id="AutoRefreshAction" Type="xsd://Microsoft.SystemCenter.Visualization.Library!Microsoft.SystemCenter.Visualization.ActionTypes/AutoRefreshAction" />
+          <Variable Id="ConsolidatedRefreshAction" Type="xsd://Microsoft.SystemCenter.Visualization.Library!Microsoft.SystemCenter.Visualization.ActionTypes/RefreshAction" />
+          <Variable Id="FilterCriteria" Type="BaseDataType" />
+          <Variable Id="ManagedEntities" Type="BaseDataType[]" />
+          <Variable Id="SelectedGridItem" Type="BaseDataType" />
+          <Variable Id="QueryCriteria" Type="xsd://string" />
+          <Variable Id="DataGridActions" Type="xsd://Microsoft.SystemCenter.Visualization.Library!Microsoft.SystemCenter.Visualization.ActionTypes/Action" />
+          <Variable Id="SortColumnBaseCollection" Type="xsd://Microsoft.SystemCenter.Visualization.Library!Microsoft.SystemCenter.Visualization.ColumnType/SortColumnBase[]" />
+          <Variable Id="ProjectionColumns" Type="xsd://Microsoft.SystemCenter.Visualization.Library!Microsoft.SystemCenter.Visualization.DataSourceTypes/ValueDefinition[]" />
+          <Variable Id="SortProjectionColumns" Type="xsd://Microsoft.SystemCenter.Visualization.Library!Microsoft.SystemCenter.Visualization.DataSourceTypes/SortValueDefinition[]" />
+          <Variable Id="VisualizedDataCount" Type="xsd://int" />
+          <Component TypeId="Visualization!Microsoft.SystemCenter.Visualization.ComponentContainer">
+            <Binding PropertyId="Visual">
+              <Component TypeId="Visualization!Microsoft.SystemCenter.Visualization.DataGrid">
+                <Binding PropertyId="KeyPropertyName">
+                  <SimpleValue Type="xsd://string" Value="Id" />
+                </Binding>
+                <Binding PropertyId="Data">
+                  <Reference>$Variable/ManagedEntities$</Reference>
+                </Binding>
+                <Binding PropertyId="GroupedColumns">
+                  <Reference>$Property/GroupedColumns$</Reference>
+                </Binding>
+                <Binding PropertyId="SortedColumns">
+                  <Reference>$Property/SortedColumns$</Reference>
+                </Binding>
+                <Binding PropertyId="Columns">
+                  <Reference>$Property/Columns$</Reference>
+                </Binding>
+                <Binding PropertyId="CellComponentType">
+                  <SimpleValue Type="xsd://string" Value="Microsoft.SystemCenter.Visualization.Library!Microsoft.SystemCenter.Visualization.DataGridGenericCell" />
+                </Binding>
+                <Binding PropertyId="ColumnHeaderComponentType">
+                  <SimpleValue Type="xsd://string" Value="Microsoft.SystemCenter.Visualization.Library!Microsoft.SystemCenter.Visualization.DataGridColumnHeaderCell" />
+                </Binding>
+                <Binding PropertyId="SelectionMode">
+                  <SimpleValue Type="xsd://string" Value="SingleRowSelect" />
+                </Binding>
+                <Binding PropertyId="Action">
+                  <Reference>$Variable/DataGridActions$</Reference>
+                </Binding>
+                <Binding PropertyId="SelectedRow">
+                  <Reference>$Variable/SelectedGridItem$</Reference>
+                </Binding>
+                <Binding PropertyId="SelectedRows">
+                  <Reference>$Property/SelectedEntities$</Reference>
+                </Binding>
+                <Binding PropertyId="ColumnHeaderVisible">
+                  <SimpleValue Type="xsd://string" Value="True" />
+                </Binding>
+                <Binding PropertyId="CanReorderColumns">
+                  <SimpleValue Type="xsd://string" Value="True" />
+                </Binding>
+                <Binding PropertyId="ItemsCount">
+                  <Reference>$Variable/VisualizedDataCount$</Reference>
+                </Binding>
+                <Binding PropertyId="AutoSelect">
+                  <SimpleValue Type="xsd://boolean" Value="False" />
+                </Binding>
+              </Component>
+            </Binding>
+            <Binding PropertyId="Objects">
+              <Component TypeId="Ambari.SCOM.Presentation.Component.TriggeredComponentHost">
+                <Binding PropertyId="ComponentType">
+                  <SimpleValue Type="xsd://string" Value="Microsoft.SystemCenter.Visualization.Library!Microsoft.SystemCenter.Visualization.ManagedEntityPropertyTask" />
+                </Binding>
+                <Binding PropertyId="ComponentTarget">
+                  <Reference>$Variable/SelectedGridItem$</Reference>
+                </Binding>
+                <Binding PropertyId="TriggerInstance">
+                  <Reference>$Variable/DataGridActions$</Reference>
+                </Binding>
+                <Binding PropertyId="TriggerTypes">
+                  <SimpleValue Type="xsd://string" Value="xsd://Microsoft.SystemCenter.Visualization.Library!Microsoft.SystemCenter.Visualization.ActionTypes/ItemPropertiesAction" />
+                </Binding>
+                <Binding PropertyId="TriggerTypes">
+                  <SimpleValue Type="xsd://string" Value="xsd://Microsoft.SystemCenter.Visualization.Library!Microsoft.SystemCenter.Visualization.ActionTypes/DoubleClickedAction" />
+                </Binding>
+              </Component>
+            </Binding>
+            <Binding PropertyId="Objects">
+              <Component TypeId="Visualization!Microsoft.SystemCenter.Visualization.OneWaySync">
+                <Binding PropertyId="From">
+                  <Reference>$Property/SelectedEntities$</Reference>
+                </Binding>
+                <Binding PropertyId="To">
+                  <Reference>$Service/SelectedItems$</Reference>
+                </Binding>
+              </Component>
+            </Binding>
+            <Binding PropertyId="Objects">
+              <Component TypeId="Visualization!Microsoft.SystemCenter.Visualization.OneWaySync">
+                <Binding PropertyId="From">
+                  <Reference>$Variable/VisualizedDataCount$</Reference>
+                </Binding>
+                <Binding PropertyId="To">
+                  <Reference>$Service/Subtitle$</Reference>
+                </Binding>
+              </Component>
+            </Binding>
+            <Binding PropertyId="Objects">
+              <Component TypeId="Ambari.SCOM.Presentation.Component.DataGridSortColumnsToSortColumnBaseCollection">
+                <Binding PropertyId="SortedColumns">
+                  <Reference>$Property/SortedColumns$</Reference>
+                </Binding>
+                <Binding PropertyId="GroupedColumns">
+                  <Reference>$Property/GroupedColumns$</Reference>
+                </Binding>
+                <Binding PropertyId="SortColumnBaseCollection">
+                  <Reference>$Variable/SortColumnBaseCollection$</Reference>
+                </Binding>
+              </Component>
+            </Binding>
+            <Binding PropertyId="Objects">
+              <Component TypeId="Ambari.SCOM.Presentation.Component.ColumnsToQueryConfigurationMapper">
+                <Binding PropertyId="PropertyList">
+                  <Reference>$Property/Columns$</Reference>
+                </Binding>
+                <Binding PropertyId="SortPropertyList">
+                  <Reference>$Variable/SortColumnBaseCollection$</Reference>
+                </Binding>
+                <Binding PropertyId="PropertyCollections">
+                  <Reference>$Variable/ProjectionColumns$</Reference>
+                </Binding>
+                <Binding PropertyId="SortPropertyCollections">
+                  <Reference>$Variable/SortProjectionColumns$</Reference>
+                </Binding>
+              </Component>
+            </Binding>
+            <Binding PropertyId="Objects">
+              <Component TypeId="Visualization!Microsoft.SystemCenter.Visualization.AutoRefreshTimer">
+                <Binding PropertyId="TickInterval">
+                  <Reference>$Property/AutoRefreshTickInterval$</Reference>
+                </Binding>
+                <Binding PropertyId="AutoRefreshAction">
+                  <Reference>$Variable/AutoRefreshAction$</Reference>
+                </Binding>
+              </Component>
+            </Binding>
+            <Binding PropertyId="Objects">
+              <Component TypeId="Visualization!Microsoft.SystemCenter.Visualization.Consolidator">
+                <Binding PropertyId="From1">
+                  <Reference>$Variable/AutoRefreshAction$</Reference>
+                </Binding>
+                <Binding PropertyId="From2">
+                  <Reference>$Service/RefreshAction$</Reference>
+                </Binding>
+                <Binding PropertyId="To">
+                  <Reference>$Variable/ConsolidatedRefreshAction$</Reference>
+                </Binding>
+              </Component>
+            </Binding>
+            <!--
+            <Binding PropertyId="Objects">
+              <Component TypeId="StateCriteriaXMLToQueryString">
+                <Binding PropertyId="ConfigurationXMLString">
+                  <Reference>$Property/Criteria$</Reference>
+                </Binding>
+                <Binding PropertyId="QueryString">
+                  <Reference>$Variable/QueryCriteria$</Reference>
+                </Binding>
+              </Component>
+            </Binding>-->
+            <Binding PropertyId="Objects">
+              <Component TypeId="Ambari.SCOM.Presentation.Component.GetManagedEntitiesDataSource">
+                <!--
+                <Binding PropertyId="CriteriaString">
+                  <Reference>$Variable/QueryCriteria$</Reference>
+                </Binding>-->
+                <Binding PropertyId="Output">
+                  <Reference>$Variable/ManagedEntities$</Reference>
+                </Binding>
+                <Binding PropertyId="TargetEntities">
+                  <Reference>$Property/TargetIds$</Reference>
+                </Binding>
+                <Binding PropertyId="BaseTypeNames">
+                  <Reference>$Property/BaseManagementPackTypes$</Reference>
+                </Binding>
+                <Binding PropertyId="RecursionTypeNames">
+                  <Reference>$Property/RecursionTypeNames$</Reference>
+                </Binding>
+                <Binding PropertyId="Properties">
+                  <Reference>$Variable/ProjectionColumns/ManagedEntity$</Reference>
+                </Binding>
+                <Binding PropertyId="SortProperties">
+                  <Reference>$Variable/SortProjectionColumns/ManagedEntity$</Reference>
+                </Binding>
+                <Binding PropertyId="Refresh">
+                  <Reference>$Variable/ConsolidatedRefreshAction$</Reference>
+                </Binding>
+              </Component>
+            </Binding>
+          </Component>
+        </Composite>
+      </ComponentImplementation>
+    </ComponentImplementations>
+  </Presentation>
+</ManagementPackFragment>

http://git-wip-us.apache.org/repos/asf/incubator-ambari/blob/873b3502/contrib/ambari-scom/management-pack/Hadoop_MP/PresentationMp/Widgets/State/HdfsServicesState.mpx
----------------------------------------------------------------------
diff --git a/contrib/ambari-scom/management-pack/Hadoop_MP/PresentationMp/Widgets/State/HdfsServicesState.mpx b/contrib/ambari-scom/management-pack/Hadoop_MP/PresentationMp/Widgets/State/HdfsServicesState.mpx
new file mode 100644
index 0000000..1741160
--- /dev/null
+++ b/contrib/ambari-scom/management-pack/Hadoop_MP/PresentationMp/Widgets/State/HdfsServicesState.mpx
@@ -0,0 +1,163 @@
+<!--## Licensed to the Apache Software Foundation (ASF) under one
+## or more contributor license agreements.  See the NOTICE file
+## distributed with this work for additional information
+## regarding copyright ownership.  The ASF licenses this file
+## to you 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.-->
+
+<ManagementPackFragment SchemaVersion="2.0" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
+  <Presentation>
+    <StringResources>
+      <StringResource ID="Ambari.SCOM.Presentation.StringResource.HdfsServicesState.ClusterName" />
+    </StringResources>
+
+    <ComponentTypes>
+      <ComponentType ID="Ambari.SCOM.Presentation.Widget.HdfsServicesState"
+                     Base="Ambari.SCOM.Presentation.Widget.SingleRowSelectStateWidget"
+                     Accessibility="Internal" />
+    </ComponentTypes>
+
+    <ComponentImplementations>
+      <ComponentImplementation ID="Ambari.SCOM.Presentation.Widget.HdfsServicesStateImplementation"
+                               TypeId="Ambari.SCOM.Presentation.Widget.HdfsServicesState"
+                               Accessibility="Internal" Platform="Wpf, Silverlight">
+        <Composite>
+          <Base>
+            <Binding PropertyId="BaseManagementPackTypes">
+              <ComplexValueCollection Type="xsd://Microsoft.SystemCenter.Visualization.Library!Microsoft.SystemCenter.Visualization.OperationalDataTypes/BaseManagementPackType[]">
+                <ComplexValue Type="xsd://Microsoft.SystemCenter.Visualization.Library!Microsoft.SystemCenter.Visualization.OperationalDataTypes/BaseManagementPackType">
+                  <Binding PropertyId="FullyQualifiedName">
+                    <SimpleValue Type="xsd://string" Value="Ambari.SCOM.Monitoring!Ambari.SCOM.ClusterService.Hdfs" />
+                  </Binding>
+                </ComplexValue>
+              </ComplexValueCollection>
+            </Binding>
+
+            <Binding PropertyId="Columns">
+              <ComplexValueCollection Type="xsd://Microsoft.SystemCenter.Visualization.Library!Microsoft.SystemCenter.Visualization.ColumnType/DataGridColumn[]">
+                <ComplexValue Type="xsd://Microsoft.SystemCenter.Visualization.Library!Microsoft.SystemCenter.Visualization.ColumnType/DataGridColumn">
+                  <Binding PropertyId="HeaderDisplayObject">
+                    <SimpleValue Type="xsd://string" Value="$MPReference/Microsoft.SystemCenter.Visualization.Library!Microsoft.SystemCenter.Visualization.Library.Entity.HealthState/DisplayName$" />
+                  </Binding>
+                  <Binding PropertyId="SortableGroupable">
+                    <SimpleValue Type="xsd://boolean" Value="True" />
+                  </Binding>
+                  <Binding PropertyId="CanResize">
+                    <SimpleValue Type="xsd://boolean" Value="True" />
+                  </Binding>
+                  <Binding PropertyId="Width">
+                    <SimpleValue Type="xsd://string" Value="Auto" />
+                  </Binding>
+                  <Binding PropertyId="PropertyName">
+                    <SimpleValue Type="xsd://string" Value="HealthState" />
+                  </Binding>
+                  <Binding PropertyId="XPath">
+                    <SimpleValue Type="xsd://string" Value="$Object/Property[Name='HealthState']$" />
+                  </Binding>
+                  <Binding PropertyId="SourceType">
+                    <SimpleValue Type="xsd://string" Value="ManagedEntity" />
+                  </Binding>
+                </ComplexValue>
+                <ComplexValue Type="xsd://Microsoft.SystemCenter.Visualization.Library!Microsoft.SystemCenter.Visualization.ColumnType/DataGridColumn">
+                  <Binding PropertyId="HeaderDisplayObject">
+                    <SimpleValue Type="xsd://string" Value="$MPReference/Ambari.SCOM.Presentation!Ambari.SCOM.Presentation.StringResource.HdfsServicesState.ClusterName/DisplayName$" />
+                  </Binding>
+                  <Binding PropertyId="PropertyName">
+                    <SimpleValue Type="xsd://string" Value="ClusterName" />
+                  </Binding>
+                  <Binding PropertyId="XPath">
+                    <SimpleValue Type="xsd://string" Value="$Object/PropertyCollection[Name='ClusterName']$" />
+                  </Binding>
+                  <Binding PropertyId="SourceType">
+                    <SimpleValue Type="xsd://string" Value="ManagedEntity" />
+                  </Binding>
+                  <Binding PropertyId="SortableGroupable">
+                    <SimpleValue Type="xsd://boolean" Value="True" />
+                  </Binding>
+                  <Binding PropertyId="CanResize">
+                    <SimpleValue Type="xsd://boolean" Value="True" />
+                  </Binding>
+                  <Binding PropertyId="Width">
+                    <SimpleValue Type="xsd://string" Value="Auto" />
+                  </Binding>
+                </ComplexValue>
+                <ComplexValue Type="xsd://Microsoft.SystemCenter.Visualization.Library!Microsoft.SystemCenter.Visualization.ColumnType/DataGridColumn">
+                  <Binding PropertyId="HeaderDisplayObject">
+                    <SimpleValue Type="xsd://string" Value="$MPReference/Microsoft.SystemCenter.Visualization.Library!Microsoft.SystemCenter.Visualization.Library.Entity.InMaintenanceMode/DisplayName$" />
+                  </Binding>
+                  <Binding PropertyId="SortableGroupable">
+                    <SimpleValue Type="xsd://boolean" Value="True" />
+                  </Binding>
+                  <Binding PropertyId="CanResize">
+                    <SimpleValue Type="xsd://boolean" Value="True" />
+                  </Binding>
+                  <Binding PropertyId="Width">
+                    <SimpleValue Type="xsd://string" Value="Auto" />
+                  </Binding>
+                  <Binding PropertyId="PropertyName">
+                    <SimpleValue Type="xsd://string" Value="InMaintenanceMode" />
+                  </Binding>
+                  <Binding PropertyId="XPath">
+                    <SimpleValue Type="xsd://string" Value="$Object/Property[Name='InMaintenanceMode']$" />
+                  </Binding>
+                  <Binding PropertyId="SourceType">
+                    <SimpleValue Type="xsd://string" Value="ManagedEntity" />
+                  </Binding>
+                </ComplexValue>
+              </ComplexValueCollection>
+            </Binding>
+
+            <Binding PropertyId="SortedColumns">
+              <ComplexValueCollection Type="xsd://Microsoft.SystemCenter.Visualization.Library!Microsoft.SystemCenter.Visualization.ColumnType/DataCollectionViewColumn[]">
+                <ComplexValue Type="xsd://Microsoft.SystemCenter.Visualization.Library!Microsoft.SystemCenter.Visualization.ColumnType/DataGridColumn">
+                  <Binding PropertyId="PropertyName">
+                    <SimpleValue Type="xsd://string" Value="ClusterName" />
+                  </Binding>
+                  <Binding PropertyId="XPath">
+                    <SimpleValue Type="xsd://string" Value="$Object/PropertyCollection[Name='ClusterName']$" />
+                  </Binding>
+                  <Binding PropertyId="SourceType">
+                    <SimpleValue Type="xsd://string" Value="ManagedEntity" />
+                  </Binding>
+                </ComplexValue>
+              </ComplexValueCollection>
+            </Binding>
+          </Base>
+        </Composite>
+      </ComponentImplementation>
+    </ComponentImplementations>
+
+    <ComponentBehaviors>
+      <ComponentBehavior ID="Ambari.SCOM.Presentation.Widget.HdfsServicesStatePersonalizeBehavior"
+                         BehaviorTypeId="Visualization!Microsoft.SystemCenter.Visualization.PersonalizeBehavior"
+                         ComponentTypeId="Ambari.SCOM.Presentation.Widget.HdfsServicesState"
+                         Accessibility="Internal">
+        <Bindings />
+      </ComponentBehavior>
+    </ComponentBehaviors>
+  </Presentation>
+
+  <LanguagePacks>
+    <LanguagePack ID="ENU" IsDefault="true">
+      <DisplayStrings>
+        <DisplayString ElementID="Ambari.SCOM.Presentation.Widget.HdfsServicesState">
+          <Name>Hadoop HDFS Cluster Services</Name>
+        </DisplayString>
+
+        <DisplayString ElementID="Ambari.SCOM.Presentation.StringResource.HdfsServicesState.ClusterName">
+          <Name>Parent Cluster Name</Name>
+        </DisplayString>
+      </DisplayStrings>
+    </LanguagePack>
+  </LanguagePacks>
+</ManagementPackFragment>

http://git-wip-us.apache.org/repos/asf/incubator-ambari/blob/873b3502/contrib/ambari-scom/management-pack/Hadoop_MP/PresentationMp/Widgets/State/JobTrackersState.mpx
----------------------------------------------------------------------
diff --git a/contrib/ambari-scom/management-pack/Hadoop_MP/PresentationMp/Widgets/State/JobTrackersState.mpx b/contrib/ambari-scom/management-pack/Hadoop_MP/PresentationMp/Widgets/State/JobTrackersState.mpx
new file mode 100644
index 0000000..2ef64be
--- /dev/null
+++ b/contrib/ambari-scom/management-pack/Hadoop_MP/PresentationMp/Widgets/State/JobTrackersState.mpx
@@ -0,0 +1,163 @@
+<!--## Licensed to the Apache Software Foundation (ASF) under one
+## or more contributor license agreements.  See the NOTICE file
+## distributed with this work for additional information
+## regarding copyright ownership.  The ASF licenses this file
+## to you 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.-->
+
+<ManagementPackFragment SchemaVersion="2.0" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
+  <Presentation>
+    <StringResources>
+      <StringResource ID="Ambari.SCOM.Presentation.StringResource.JobTrackersState.ClusterName" />
+    </StringResources>
+
+    <ComponentTypes>
+      <ComponentType ID="Ambari.SCOM.Presentation.Widget.JobTrackersState"
+                     Base="Ambari.SCOM.Presentation.Widget.SingleRowSelectStateWidget"
+                     Accessibility="Internal" />
+    </ComponentTypes>
+
+    <ComponentImplementations>
+      <ComponentImplementation ID="Ambari.SCOM.Presentation.Widget.JobTrackersStateImplementation"
+                               TypeId="Ambari.SCOM.Presentation.Widget.JobTrackersState"
+                               Accessibility="Internal" Platform="Wpf, Silverlight">
+        <Composite>
+          <Base>
+            <Binding PropertyId="BaseManagementPackTypes">
+              <ComplexValueCollection Type="xsd://Microsoft.SystemCenter.Visualization.Library!Microsoft.SystemCenter.Visualization.OperationalDataTypes/BaseManagementPackType[]">
+                <ComplexValue Type="xsd://Microsoft.SystemCenter.Visualization.Library!Microsoft.SystemCenter.Visualization.OperationalDataTypes/BaseManagementPackType">
+                  <Binding PropertyId="FullyQualifiedName">
+                    <SimpleValue Type="xsd://string" Value="Ambari.SCOM.Monitoring!Ambari.SCOM.HostComponent.JobTracker" />
+                  </Binding>
+                </ComplexValue>
+              </ComplexValueCollection>
+            </Binding>
+
+            <Binding PropertyId="Columns">
+              <ComplexValueCollection Type="xsd://Microsoft.SystemCenter.Visualization.Library!Microsoft.SystemCenter.Visualization.ColumnType/DataGridColumn[]">
+                <ComplexValue Type="xsd://Microsoft.SystemCenter.Visualization.Library!Microsoft.SystemCenter.Visualization.ColumnType/DataGridColumn">
+                  <Binding PropertyId="HeaderDisplayObject">
+                    <SimpleValue Type="xsd://string" Value="$MPReference/Microsoft.SystemCenter.Visualization.Library!Microsoft.SystemCenter.Visualization.Library.Entity.HealthState/DisplayName$" />
+                  </Binding>
+                  <Binding PropertyId="SortableGroupable">
+                    <SimpleValue Type="xsd://boolean" Value="True" />
+                  </Binding>
+                  <Binding PropertyId="CanResize">
+                    <SimpleValue Type="xsd://boolean" Value="True" />
+                  </Binding>
+                  <Binding PropertyId="Width">
+                    <SimpleValue Type="xsd://string" Value="Auto" />
+                  </Binding>
+                  <Binding PropertyId="PropertyName">
+                    <SimpleValue Type="xsd://string" Value="HealthState" />
+                  </Binding>
+                  <Binding PropertyId="XPath">
+                    <SimpleValue Type="xsd://string" Value="$Object/Property[Name='HealthState']$" />
+                  </Binding>
+                  <Binding PropertyId="SourceType">
+                    <SimpleValue Type="xsd://string" Value="ManagedEntity" />
+                  </Binding>
+                </ComplexValue>
+                <ComplexValue Type="xsd://Microsoft.SystemCenter.Visualization.Library!Microsoft.SystemCenter.Visualization.ColumnType/DataGridColumn">
+                  <Binding PropertyId="HeaderDisplayObject">
+                    <SimpleValue Type="xsd://string" Value="$MPReference/Ambari.SCOM.Presentation!Ambari.SCOM.Presentation.StringResource.HdfsServicesState.ClusterName/DisplayName$" />
+                  </Binding>
+                  <Binding PropertyId="PropertyName">
+                    <SimpleValue Type="xsd://string" Value="ClusterName" />
+                  </Binding>
+                  <Binding PropertyId="XPath">
+                    <SimpleValue Type="xsd://string" Value="$Object/PropertyCollection[Name='ClusterName']$" />
+                  </Binding>
+                  <Binding PropertyId="SourceType">
+                    <SimpleValue Type="xsd://string" Value="ManagedEntity" />
+                  </Binding>
+                  <Binding PropertyId="SortableGroupable">
+                    <SimpleValue Type="xsd://boolean" Value="True" />
+                  </Binding>
+                  <Binding PropertyId="CanResize">
+                    <SimpleValue Type="xsd://boolean" Value="True" />
+                  </Binding>
+                  <Binding PropertyId="Width">
+                    <SimpleValue Type="xsd://string" Value="Auto" />
+                  </Binding>
+                </ComplexValue>
+                <ComplexValue Type="xsd://Microsoft.SystemCenter.Visualization.Library!Microsoft.SystemCenter.Visualization.ColumnType/DataGridColumn">
+                  <Binding PropertyId="HeaderDisplayObject">
+                    <SimpleValue Type="xsd://string" Value="$MPReference/Microsoft.SystemCenter.Visualization.Library!Microsoft.SystemCenter.Visualization.Library.Entity.InMaintenanceMode/DisplayName$" />
+                  </Binding>
+                  <Binding PropertyId="SortableGroupable">
+                    <SimpleValue Type="xsd://boolean" Value="True" />
+                  </Binding>
+                  <Binding PropertyId="CanResize">
+                    <SimpleValue Type="xsd://boolean" Value="True" />
+                  </Binding>
+                  <Binding PropertyId="Width">
+                    <SimpleValue Type="xsd://string" Value="Auto" />
+                  </Binding>
+                  <Binding PropertyId="PropertyName">
+                    <SimpleValue Type="xsd://string" Value="InMaintenanceMode" />
+                  </Binding>
+                  <Binding PropertyId="XPath">
+                    <SimpleValue Type="xsd://string" Value="$Object/Property[Name='InMaintenanceMode']$" />
+                  </Binding>
+                  <Binding PropertyId="SourceType">
+                    <SimpleValue Type="xsd://string" Value="ManagedEntity" />
+                  </Binding>
+                </ComplexValue>
+              </ComplexValueCollection>
+            </Binding>
+
+            <Binding PropertyId="SortedColumns">
+              <ComplexValueCollection Type="xsd://Microsoft.SystemCenter.Visualization.Library!Microsoft.SystemCenter.Visualization.ColumnType/DataCollectionViewColumn[]">
+                <ComplexValue Type="xsd://Microsoft.SystemCenter.Visualization.Library!Microsoft.SystemCenter.Visualization.ColumnType/DataGridColumn">
+                  <Binding PropertyId="PropertyName">
+                    <SimpleValue Type="xsd://string" Value="ClusterName" />
+                  </Binding>
+                  <Binding PropertyId="XPath">
+                    <SimpleValue Type="xsd://string" Value="$Object/PropertyCollection[Name='ClusterName']$" />
+                  </Binding>
+                  <Binding PropertyId="SourceType">
+                    <SimpleValue Type="xsd://string" Value="ManagedEntity" />
+                  </Binding>
+                </ComplexValue>
+              </ComplexValueCollection>
+            </Binding>
+          </Base>
+        </Composite>
+      </ComponentImplementation>
+    </ComponentImplementations>
+
+    <ComponentBehaviors>
+      <ComponentBehavior ID="Ambari.SCOM.Presentation.Widget.JobTrackersStatePersonalizeBehavior"
+                         BehaviorTypeId="Visualization!Microsoft.SystemCenter.Visualization.PersonalizeBehavior"
+                         ComponentTypeId="Ambari.SCOM.Presentation.Widget.JobTrackersState"
+                         Accessibility="Internal">
+        <Bindings />
+      </ComponentBehavior>
+    </ComponentBehaviors>
+  </Presentation>
+
+  <LanguagePacks>
+    <LanguagePack ID="ENU" IsDefault="true">
+      <DisplayStrings>
+        <DisplayString ElementID="Ambari.SCOM.Presentation.Widget.JobTrackersState">
+          <Name>Hadoop JobTracker Host Components</Name>
+        </DisplayString>
+
+        <DisplayString ElementID="Ambari.SCOM.Presentation.StringResource.JobTrackersState.ClusterName">
+          <Name>Parent Cluster Name</Name>
+        </DisplayString>
+      </DisplayStrings>
+    </LanguagePack>
+  </LanguagePacks>
+</ManagementPackFragment>

http://git-wip-us.apache.org/repos/asf/incubator-ambari/blob/873b3502/contrib/ambari-scom/management-pack/Hadoop_MP/PresentationMp/Widgets/State/MapReduceServicesState.mpx
----------------------------------------------------------------------
diff --git a/contrib/ambari-scom/management-pack/Hadoop_MP/PresentationMp/Widgets/State/MapReduceServicesState.mpx b/contrib/ambari-scom/management-pack/Hadoop_MP/PresentationMp/Widgets/State/MapReduceServicesState.mpx
new file mode 100644
index 0000000..12d9b95
--- /dev/null
+++ b/contrib/ambari-scom/management-pack/Hadoop_MP/PresentationMp/Widgets/State/MapReduceServicesState.mpx
@@ -0,0 +1,163 @@
+<!--## Licensed to the Apache Software Foundation (ASF) under one
+## or more contributor license agreements.  See the NOTICE file
+## distributed with this work for additional information
+## regarding copyright ownership.  The ASF licenses this file
+## to you 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.-->
+
+<ManagementPackFragment SchemaVersion="2.0" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
+  <Presentation>
+    <StringResources>
+      <StringResource ID="Ambari.SCOM.Presentation.StringResource.MapReduceServicesState.ClusterName" />
+    </StringResources>
+
+    <ComponentTypes>
+      <ComponentType ID="Ambari.SCOM.Presentation.Widget.MapReduceServicesState"
+                     Base="Ambari.SCOM.Presentation.Widget.SingleRowSelectStateWidget"
+                     Accessibility="Internal" />
+    </ComponentTypes>
+
+    <ComponentImplementations>
+      <ComponentImplementation ID="Ambari.SCOM.Presentation.Widget.MapReduceServicesStateImplementation"
+                               TypeId="Ambari.SCOM.Presentation.Widget.MapReduceServicesState"
+                               Accessibility="Internal" Platform="Wpf, Silverlight">
+        <Composite>
+          <Base>
+            <Binding PropertyId="BaseManagementPackTypes">
+              <ComplexValueCollection Type="xsd://Microsoft.SystemCenter.Visualization.Library!Microsoft.SystemCenter.Visualization.OperationalDataTypes/BaseManagementPackType[]">
+                <ComplexValue Type="xsd://Microsoft.SystemCenter.Visualization.Library!Microsoft.SystemCenter.Visualization.OperationalDataTypes/BaseManagementPackType">
+                  <Binding PropertyId="FullyQualifiedName">
+                    <SimpleValue Type="xsd://string" Value="Ambari.SCOM.Monitoring!Ambari.SCOM.ClusterService.MapReduce" />
+                  </Binding>
+                </ComplexValue>
+              </ComplexValueCollection>
+            </Binding>
+
+            <Binding PropertyId="Columns">
+              <ComplexValueCollection Type="xsd://Microsoft.SystemCenter.Visualization.Library!Microsoft.SystemCenter.Visualization.ColumnType/DataGridColumn[]">
+                <ComplexValue Type="xsd://Microsoft.SystemCenter.Visualization.Library!Microsoft.SystemCenter.Visualization.ColumnType/DataGridColumn">
+                  <Binding PropertyId="HeaderDisplayObject">
+                    <SimpleValue Type="xsd://string" Value="$MPReference/Microsoft.SystemCenter.Visualization.Library!Microsoft.SystemCenter.Visualization.Library.Entity.HealthState/DisplayName$" />
+                  </Binding>
+                  <Binding PropertyId="SortableGroupable">
+                    <SimpleValue Type="xsd://boolean" Value="True" />
+                  </Binding>
+                  <Binding PropertyId="CanResize">
+                    <SimpleValue Type="xsd://boolean" Value="True" />
+                  </Binding>
+                  <Binding PropertyId="Width">
+                    <SimpleValue Type="xsd://string" Value="Auto" />
+                  </Binding>
+                  <Binding PropertyId="PropertyName">
+                    <SimpleValue Type="xsd://string" Value="HealthState" />
+                  </Binding>
+                  <Binding PropertyId="XPath">
+                    <SimpleValue Type="xsd://string" Value="$Object/Property[Name='HealthState']$" />
+                  </Binding>
+                  <Binding PropertyId="SourceType">
+                    <SimpleValue Type="xsd://string" Value="ManagedEntity" />
+                  </Binding>
+                </ComplexValue>
+                <ComplexValue Type="xsd://Microsoft.SystemCenter.Visualization.Library!Microsoft.SystemCenter.Visualization.ColumnType/DataGridColumn">
+                  <Binding PropertyId="HeaderDisplayObject">
+                    <SimpleValue Type="xsd://string" Value="$MPReference/Ambari.SCOM.Presentation!Ambari.SCOM.Presentation.StringResource.HdfsServicesState.ClusterName/DisplayName$" />
+                  </Binding>
+                  <Binding PropertyId="PropertyName">
+                    <SimpleValue Type="xsd://string" Value="ClusterName" />
+                  </Binding>
+                  <Binding PropertyId="XPath">
+                    <SimpleValue Type="xsd://string" Value="$Object/PropertyCollection[Name='ClusterName']$" />
+                  </Binding>
+                  <Binding PropertyId="SourceType">
+                    <SimpleValue Type="xsd://string" Value="ManagedEntity" />
+                  </Binding>
+                  <Binding PropertyId="SortableGroupable">
+                    <SimpleValue Type="xsd://boolean" Value="True" />
+                  </Binding>
+                  <Binding PropertyId="CanResize">
+                    <SimpleValue Type="xsd://boolean" Value="True" />
+                  </Binding>
+                  <Binding PropertyId="Width">
+                    <SimpleValue Type="xsd://string" Value="Auto" />
+                  </Binding>
+                </ComplexValue>
+                <ComplexValue Type="xsd://Microsoft.SystemCenter.Visualization.Library!Microsoft.SystemCenter.Visualization.ColumnType/DataGridColumn">
+                  <Binding PropertyId="HeaderDisplayObject">
+                    <SimpleValue Type="xsd://string" Value="$MPReference/Microsoft.SystemCenter.Visualization.Library!Microsoft.SystemCenter.Visualization.Library.Entity.InMaintenanceMode/DisplayName$" />
+                  </Binding>
+                  <Binding PropertyId="SortableGroupable">
+                    <SimpleValue Type="xsd://boolean" Value="True" />
+                  </Binding>
+                  <Binding PropertyId="CanResize">
+                    <SimpleValue Type="xsd://boolean" Value="True" />
+                  </Binding>
+                  <Binding PropertyId="Width">
+                    <SimpleValue Type="xsd://string" Value="Auto" />
+                  </Binding>
+                  <Binding PropertyId="PropertyName">
+                    <SimpleValue Type="xsd://string" Value="InMaintenanceMode" />
+                  </Binding>
+                  <Binding PropertyId="XPath">
+                    <SimpleValue Type="xsd://string" Value="$Object/Property[Name='InMaintenanceMode']$" />
+                  </Binding>
+                  <Binding PropertyId="SourceType">
+                    <SimpleValue Type="xsd://string" Value="ManagedEntity" />
+                  </Binding>
+                </ComplexValue>
+              </ComplexValueCollection>
+            </Binding>
+
+            <Binding PropertyId="SortedColumns">
+              <ComplexValueCollection Type="xsd://Microsoft.SystemCenter.Visualization.Library!Microsoft.SystemCenter.Visualization.ColumnType/DataCollectionViewColumn[]">
+                <ComplexValue Type="xsd://Microsoft.SystemCenter.Visualization.Library!Microsoft.SystemCenter.Visualization.ColumnType/DataGridColumn">
+                  <Binding PropertyId="PropertyName">
+                    <SimpleValue Type="xsd://string" Value="ClusterName" />
+                  </Binding>
+                  <Binding PropertyId="XPath">
+                    <SimpleValue Type="xsd://string" Value="$Object/PropertyCollection[Name='ClusterName']$" />
+                  </Binding>
+                  <Binding PropertyId="SourceType">
+                    <SimpleValue Type="xsd://string" Value="ManagedEntity" />
+                  </Binding>
+                </ComplexValue>
+              </ComplexValueCollection>
+            </Binding>
+          </Base>
+        </Composite>
+      </ComponentImplementation>
+    </ComponentImplementations>
+
+    <ComponentBehaviors>
+      <ComponentBehavior ID="Ambari.SCOM.Presentation.Widget.MapReduceServicesStatePersonalizeBehavior"
+                         BehaviorTypeId="Visualization!Microsoft.SystemCenter.Visualization.PersonalizeBehavior"
+                         ComponentTypeId="Ambari.SCOM.Presentation.Widget.MapReduceServicesState"
+                         Accessibility="Internal">
+        <Bindings />
+      </ComponentBehavior>
+    </ComponentBehaviors>
+  </Presentation>
+
+  <LanguagePacks>
+    <LanguagePack ID="ENU" IsDefault="true">
+      <DisplayStrings>
+        <DisplayString ElementID="Ambari.SCOM.Presentation.Widget.MapReduceServicesState">
+          <Name>Hadoop MapReduce Cluster Services</Name>
+        </DisplayString>
+
+        <DisplayString ElementID="Ambari.SCOM.Presentation.StringResource.MapReduceServicesState.ClusterName">
+          <Name>Parent Cluster Name</Name>
+        </DisplayString>
+      </DisplayStrings>
+    </LanguagePack>
+  </LanguagePacks>
+</ManagementPackFragment>

http://git-wip-us.apache.org/repos/asf/incubator-ambari/blob/873b3502/contrib/ambari-scom/management-pack/Hadoop_MP/PresentationMp/Widgets/State/NameNodesState.mpx
----------------------------------------------------------------------
diff --git a/contrib/ambari-scom/management-pack/Hadoop_MP/PresentationMp/Widgets/State/NameNodesState.mpx b/contrib/ambari-scom/management-pack/Hadoop_MP/PresentationMp/Widgets/State/NameNodesState.mpx
new file mode 100644
index 0000000..d49b3eb
--- /dev/null
+++ b/contrib/ambari-scom/management-pack/Hadoop_MP/PresentationMp/Widgets/State/NameNodesState.mpx
@@ -0,0 +1,163 @@
+<!--## Licensed to the Apache Software Foundation (ASF) under one
+## or more contributor license agreements.  See the NOTICE file
+## distributed with this work for additional information
+## regarding copyright ownership.  The ASF licenses this file
+## to you 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.-->
+
+<ManagementPackFragment SchemaVersion="2.0" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
+  <Presentation>
+    <StringResources>
+      <StringResource ID="Ambari.SCOM.Presentation.StringResource.NameNodesState.ClusterName" />
+    </StringResources>
+
+    <ComponentTypes>
+      <ComponentType ID="Ambari.SCOM.Presentation.Widget.NameNodesState"
+                     Base="Ambari.SCOM.Presentation.Widget.SingleRowSelectStateWidget"
+                     Accessibility="Internal" />
+    </ComponentTypes>
+
+    <ComponentImplementations>
+      <ComponentImplementation ID="Ambari.SCOM.Presentation.Widget.NameNodesStateImplementation"
+                               TypeId="Ambari.SCOM.Presentation.Widget.NameNodesState"
+                               Accessibility="Internal" Platform="Wpf, Silverlight">
+        <Composite>
+          <Base>
+            <Binding PropertyId="BaseManagementPackTypes">
+              <ComplexValueCollection Type="xsd://Microsoft.SystemCenter.Visualization.Library!Microsoft.SystemCenter.Visualization.OperationalDataTypes/BaseManagementPackType[]">
+                <ComplexValue Type="xsd://Microsoft.SystemCenter.Visualization.Library!Microsoft.SystemCenter.Visualization.OperationalDataTypes/BaseManagementPackType">
+                  <Binding PropertyId="FullyQualifiedName">
+                    <SimpleValue Type="xsd://string" Value="Ambari.SCOM.Monitoring!Ambari.SCOM.HostComponent.NameNode" />
+                  </Binding>
+                </ComplexValue>
+              </ComplexValueCollection>
+            </Binding>
+
+            <Binding PropertyId="Columns">
+              <ComplexValueCollection Type="xsd://Microsoft.SystemCenter.Visualization.Library!Microsoft.SystemCenter.Visualization.ColumnType/DataGridColumn[]">
+                <ComplexValue Type="xsd://Microsoft.SystemCenter.Visualization.Library!Microsoft.SystemCenter.Visualization.ColumnType/DataGridColumn">
+                  <Binding PropertyId="HeaderDisplayObject">
+                    <SimpleValue Type="xsd://string" Value="$MPReference/Microsoft.SystemCenter.Visualization.Library!Microsoft.SystemCenter.Visualization.Library.Entity.HealthState/DisplayName$" />
+                  </Binding>
+                  <Binding PropertyId="SortableGroupable">
+                    <SimpleValue Type="xsd://boolean" Value="True" />
+                  </Binding>
+                  <Binding PropertyId="CanResize">
+                    <SimpleValue Type="xsd://boolean" Value="True" />
+                  </Binding>
+                  <Binding PropertyId="Width">
+                    <SimpleValue Type="xsd://string" Value="Auto" />
+                  </Binding>
+                  <Binding PropertyId="PropertyName">
+                    <SimpleValue Type="xsd://string" Value="HealthState" />
+                  </Binding>
+                  <Binding PropertyId="XPath">
+                    <SimpleValue Type="xsd://string" Value="$Object/Property[Name='HealthState']$" />
+                  </Binding>
+                  <Binding PropertyId="SourceType">
+                    <SimpleValue Type="xsd://string" Value="ManagedEntity" />
+                  </Binding>
+                </ComplexValue>
+                <ComplexValue Type="xsd://Microsoft.SystemCenter.Visualization.Library!Microsoft.SystemCenter.Visualization.ColumnType/DataGridColumn">
+                  <Binding PropertyId="HeaderDisplayObject">
+                    <SimpleValue Type="xsd://string" Value="$MPReference/Ambari.SCOM.Presentation!Ambari.SCOM.Presentation.StringResource.HdfsServicesState.ClusterName/DisplayName$" />
+                  </Binding>
+                  <Binding PropertyId="PropertyName">
+                    <SimpleValue Type="xsd://string" Value="ClusterName" />
+                  </Binding>
+                  <Binding PropertyId="XPath">
+                    <SimpleValue Type="xsd://string" Value="$Object/PropertyCollection[Name='ClusterName']$" />
+                  </Binding>
+                  <Binding PropertyId="SourceType">
+                    <SimpleValue Type="xsd://string" Value="ManagedEntity" />
+                  </Binding>
+                  <Binding PropertyId="SortableGroupable">
+                    <SimpleValue Type="xsd://boolean" Value="True" />
+                  </Binding>
+                  <Binding PropertyId="CanResize">
+                    <SimpleValue Type="xsd://boolean" Value="True" />
+                  </Binding>
+                  <Binding PropertyId="Width">
+                    <SimpleValue Type="xsd://string" Value="Auto" />
+                  </Binding>
+                </ComplexValue>
+                <ComplexValue Type="xsd://Microsoft.SystemCenter.Visualization.Library!Microsoft.SystemCenter.Visualization.ColumnType/DataGridColumn">
+                  <Binding PropertyId="HeaderDisplayObject">
+                    <SimpleValue Type="xsd://string" Value="$MPReference/Microsoft.SystemCenter.Visualization.Library!Microsoft.SystemCenter.Visualization.Library.Entity.InMaintenanceMode/DisplayName$" />
+                  </Binding>
+                  <Binding PropertyId="SortableGroupable">
+                    <SimpleValue Type="xsd://boolean" Value="True" />
+                  </Binding>
+                  <Binding PropertyId="CanResize">
+                    <SimpleValue Type="xsd://boolean" Value="True" />
+                  </Binding>
+                  <Binding PropertyId="Width">
+                    <SimpleValue Type="xsd://string" Value="Auto" />
+                  </Binding>
+                  <Binding PropertyId="PropertyName">
+                    <SimpleValue Type="xsd://string" Value="InMaintenanceMode" />
+                  </Binding>
+                  <Binding PropertyId="XPath">
+                    <SimpleValue Type="xsd://string" Value="$Object/Property[Name='InMaintenanceMode']$" />
+                  </Binding>
+                  <Binding PropertyId="SourceType">
+                    <SimpleValue Type="xsd://string" Value="ManagedEntity" />
+                  </Binding>
+                </ComplexValue>
+              </ComplexValueCollection>
+            </Binding>
+
+            <Binding PropertyId="SortedColumns">
+              <ComplexValueCollection Type="xsd://Microsoft.SystemCenter.Visualization.Library!Microsoft.SystemCenter.Visualization.ColumnType/DataCollectionViewColumn[]">
+                <ComplexValue Type="xsd://Microsoft.SystemCenter.Visualization.Library!Microsoft.SystemCenter.Visualization.ColumnType/DataGridColumn">
+                  <Binding PropertyId="PropertyName">
+                    <SimpleValue Type="xsd://string" Value="ClusterName" />
+                  </Binding>
+                  <Binding PropertyId="XPath">
+                    <SimpleValue Type="xsd://string" Value="$Object/PropertyCollection[Name='ClusterName']$" />
+                  </Binding>
+                  <Binding PropertyId="SourceType">
+                    <SimpleValue Type="xsd://string" Value="ManagedEntity" />
+                  </Binding>
+                </ComplexValue>
+              </ComplexValueCollection>
+            </Binding>
+          </Base>
+        </Composite>
+      </ComponentImplementation>
+    </ComponentImplementations>
+
+    <ComponentBehaviors>
+      <ComponentBehavior ID="Ambari.SCOM.Presentation.Widget.NameNodesStatePersonalizeBehavior"
+                         BehaviorTypeId="Visualization!Microsoft.SystemCenter.Visualization.PersonalizeBehavior"
+                         ComponentTypeId="Ambari.SCOM.Presentation.Widget.NameNodesState"
+                         Accessibility="Internal">
+        <Bindings />
+      </ComponentBehavior>
+    </ComponentBehaviors>
+  </Presentation>
+
+  <LanguagePacks>
+    <LanguagePack ID="ENU" IsDefault="true">
+      <DisplayStrings>
+        <DisplayString ElementID="Ambari.SCOM.Presentation.Widget.NameNodesState">
+          <Name>Hadoop NameNode Host Components</Name>
+        </DisplayString>
+
+        <DisplayString ElementID="Ambari.SCOM.Presentation.StringResource.NameNodesState.ClusterName">
+          <Name>Parent Cluster Name</Name>
+        </DisplayString>
+      </DisplayStrings>
+    </LanguagePack>
+  </LanguagePacks>
+</ManagementPackFragment>

http://git-wip-us.apache.org/repos/asf/incubator-ambari/blob/873b3502/contrib/ambari-scom/management-pack/Hadoop_MP/ScomPages/DiscoveryTemplate/AmbariDetailsPage.Designer.cs
----------------------------------------------------------------------
diff --git a/contrib/ambari-scom/management-pack/Hadoop_MP/ScomPages/DiscoveryTemplate/AmbariDetailsPage.Designer.cs b/contrib/ambari-scom/management-pack/Hadoop_MP/ScomPages/DiscoveryTemplate/AmbariDetailsPage.Designer.cs
new file mode 100644
index 0000000..1ca1ed0
--- /dev/null
+++ b/contrib/ambari-scom/management-pack/Hadoop_MP/ScomPages/DiscoveryTemplate/AmbariDetailsPage.Designer.cs
@@ -0,0 +1,147 @@
+// Licensed to the Apache Software Foundation (ASF) under one
+// or more contributor license agreements.  See the NOTICE file
+// distributed with this work for additional information
+// regarding copyright ownership.  The ASF licenses this file
+// to you 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.
+
+namespace Ambari.SCOM.ScomPages.DiscoveryTemplate
+{
+    partial class AmbariDetailsPage {
+        /// <summary> 
+        /// Required designer variable.
+        /// </summary>
+        private System.ComponentModel.IContainer components = null;
+
+        /// <summary> 
+        /// Clean up any resources being used.
+        /// </summary>
+        /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
+        protected override void Dispose(bool disposing) {
+            if (disposing && (components != null)) {
+                components.Dispose();
+            }
+            base.Dispose(disposing);
+        }
+
+        #region Component Designer generated code
+
+        /// <summary> 
+        /// Required method for Designer support - do not modify 
+        /// the contents of this method with the code editor.
+        /// </summary>
+        private void InitializeComponent() {
+            this.lblDescription = new System.Windows.Forms.Label();
+            this.lblTitle = new Microsoft.EnterpriseManagement.Mom.Internal.UI.Controls.PageSectionLabel();
+            this.cbRunAsAccount = new System.Windows.Forms.ComboBox();
+            this.lblRunAsAccount = new System.Windows.Forms.Label();
+            this.txtAmbariUri = new System.Windows.Forms.TextBox();
+            this.lblAmbariUri = new System.Windows.Forms.Label();
+            this.SuspendLayout();
+            // 
+            // lblDescription
+            // 
+            this.lblDescription.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) 
+            | System.Windows.Forms.AnchorStyles.Right)));
+            this.lblDescription.ImeMode = System.Windows.Forms.ImeMode.NoControl;
+            this.lblDescription.Location = new System.Drawing.Point(0, 39);
+            this.lblDescription.Name = "lblDescription";
+            this.lblDescription.Size = new System.Drawing.Size(436, 88);
+            this.lblDescription.TabIndex = 12;
+            this.lblDescription.Text = "Provide details about the Hadoop subscriptions you want to monitor.\r" +
+    "\n";
+            // 
+            // lblTitle
+            // 
+            this.lblTitle.BackColor = System.Drawing.Color.Transparent;
+            this.lblTitle.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Bold);
+            this.lblTitle.ImeMode = System.Windows.Forms.ImeMode.NoControl;
+            this.lblTitle.Location = new System.Drawing.Point(0, 10);
+            this.lblTitle.MinimumSize = new System.Drawing.Size(244, 0);
+            this.lblTitle.Name = "lblTitle";
+            this.lblTitle.Size = new System.Drawing.Size(270, 18);
+            this.lblTitle.TabIndex = 7;
+            this.lblTitle.Text = "Hadoop Details";
+            // 
+            // cbRunAsAccount
+            // 
+            this.cbRunAsAccount.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) 
+            | System.Windows.Forms.AnchorStyles.Right)));
+            this.cbRunAsAccount.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.cbRunAsAccount.FormattingEnabled = true;
+            this.cbRunAsAccount.Location = new System.Drawing.Point(3, 210);
+            this.cbRunAsAccount.Name = "cbRunAsAccount";
+            this.cbRunAsAccount.Size = new System.Drawing.Size(433, 21);
+            this.cbRunAsAccount.TabIndex = 10;
+            this.cbRunAsAccount.SelectedIndexChanged += new System.EventHandler(this.ValidatePageConfigurationEventHandler);
+            // 
+            // lblRunAsAccount
+            // 
+            this.lblRunAsAccount.AutoSize = true;
+            this.lblRunAsAccount.ImeMode = System.Windows.Forms.ImeMode.NoControl;
+            this.lblRunAsAccount.Location = new System.Drawing.Point(0, 194);
+            this.lblRunAsAccount.Name = "lblRunAsAccount";
+            this.lblRunAsAccount.Size = new System.Drawing.Size(143, 13);
+            this.lblRunAsAccount.TabIndex = 11;
+            this.lblRunAsAccount.Text = "Credentials Run As Account:";
+            // 
+            // txtAmbariUri
+            // 
+            this.txtAmbariUri.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) 
+            | System.Windows.Forms.AnchorStyles.Right)));
+            this.txtAmbariUri.Location = new System.Drawing.Point(3, 158);
+            this.txtAmbariUri.Name = "txtAmbariUri";
+            this.txtAmbariUri.Size = new System.Drawing.Size(433, 20);
+            this.txtAmbariUri.TabIndex = 9;
+            this.txtAmbariUri.TextChanged += new System.EventHandler(this.ValidatePageConfigurationEventHandler);
+            // 
+            // lblAmbariUri
+            // 
+            this.lblAmbariUri.AutoSize = true;
+            this.lblAmbariUri.ImeMode = System.Windows.Forms.ImeMode.NoControl;
+            this.lblAmbariUri.Location = new System.Drawing.Point(0, 142);
+            this.lblAmbariUri.Name = "lblAmbariUri";
+            this.lblAmbariUri.Size = new System.Drawing.Size(64, 13);
+            this.lblAmbariUri.TabIndex = 8;
+            this.lblAmbariUri.Text = "Ambari URI:";
+            // 
+            // AmbariDetailsPage
+            // 
+            this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
+            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+            this.Controls.Add(this.lblDescription);
+            this.Controls.Add(this.lblTitle);
+            this.Controls.Add(this.cbRunAsAccount);
+            this.Controls.Add(this.lblRunAsAccount);
+            this.Controls.Add(this.txtAmbariUri);
+            this.Controls.Add(this.lblAmbariUri);
+            this.HeaderText = "Hadoop Details";
+            this.Name = "AmbariDetailsPage";
+            this.NavigationText = "Hadoop Details";
+            this.Size = new System.Drawing.Size(456, 400);
+            this.TabName = "Hadoop Details";
+            this.ResumeLayout(false);
+            this.PerformLayout();
+
+        }
+
+        #endregion
+
+        private System.Windows.Forms.Label lblDescription;
+        private Microsoft.EnterpriseManagement.Mom.Internal.UI.Controls.PageSectionLabel lblTitle;
+        private System.Windows.Forms.ComboBox cbRunAsAccount;
+        private System.Windows.Forms.Label lblRunAsAccount;
+        private System.Windows.Forms.TextBox txtAmbariUri;
+        private System.Windows.Forms.Label lblAmbariUri;
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-ambari/blob/873b3502/contrib/ambari-scom/management-pack/Hadoop_MP/ScomPages/DiscoveryTemplate/AmbariDetailsPage.cs
----------------------------------------------------------------------
diff --git a/contrib/ambari-scom/management-pack/Hadoop_MP/ScomPages/DiscoveryTemplate/AmbariDetailsPage.cs b/contrib/ambari-scom/management-pack/Hadoop_MP/ScomPages/DiscoveryTemplate/AmbariDetailsPage.cs
new file mode 100644
index 0000000..d96e407
--- /dev/null
+++ b/contrib/ambari-scom/management-pack/Hadoop_MP/ScomPages/DiscoveryTemplate/AmbariDetailsPage.cs
@@ -0,0 +1,119 @@
+// Licensed to the Apache Software Foundation (ASF) under one
+// or more contributor license agreements.  See the NOTICE file
+// distributed with this work for additional information
+// regarding copyright ownership.  The ASF licenses this file
+// to you 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.
+
+using System;
+using System.Collections.Generic;
+using Microsoft.EnterpriseManagement.Mom.Internal.UI.Common;
+using Microsoft.EnterpriseManagement.Security;
+using Microsoft.EnterpriseManagement.UI;
+using System.Windows.Forms;
+
+namespace Ambari.SCOM.ScomPages.DiscoveryTemplate {
+    public partial class AmbariDetailsPage : UIPage {
+        public const string SharedUserDataAmbariUri = "AmbariDetails.AmbariUri";
+        public const string SharedUserDataRunAsId = "AmbariDetails.RunAsId";
+        public const string SharedUserDataRunAsName = "AmbariDetails.RunAsName";
+        public const string SharedUserDataRunAsSsid = "AmbariDetails.RunAsSsid";
+
+        private List<RunAsAccountWrapper> runAsAccountsList;
+
+        public AmbariDetailsPage() {
+            InitializeComponent();
+        }
+
+        public override void LoadPageConfig() {
+            if (!IsCreationMode) {
+                if (String.IsNullOrEmpty(InputConfigurationXml)) return;
+
+                try {
+                    var pageConfig = (AmbariDetailsPageConfig)XmlHelper.Deserialize(InputConfigurationXml, typeof(AmbariDetailsPageConfig), true);
+                    PopulateRunAsComboBox();
+
+                    txtAmbariUri.Text = pageConfig.AmbariUri;
+
+                    if (String.IsNullOrEmpty(pageConfig.RunAsAccount)) {
+                        cbRunAsAccount.SelectedIndex = -1;
+                    } else {
+                        cbRunAsAccount.SelectedIndex = runAsAccountsList.FindIndex(a => a.AccountStorageIdString.Equals(pageConfig.RunAsAccount));
+                    }
+
+                    SetSharedUserData();
+                } catch (Exception) {
+                    return;
+                }
+            }
+
+            IsConfigValid = ValidatePageConfiguration();
+            base.LoadPageConfig();
+        }
+
+        public override bool OnSetActive() {
+            PopulateRunAsComboBox();
+            return base.OnSetActive();
+        }
+
+
+        public override bool SavePageConfig() {
+            IsConfigValid = ValidatePageConfiguration();
+            if (!IsConfigValid) return false;
+
+            OutputConfigurationXml = XmlHelper.Serialize(
+                                            new AmbariDetailsPageConfig() {
+                                                AmbariUri = txtAmbariUri.Text.Trim().ToLowerInvariant(),
+                                                RunAsAccount = runAsAccountsList[cbRunAsAccount.SelectedIndex].AccountStorageIdString },
+                                            true);
+            SetSharedUserData();
+            return true;
+        }
+
+        private void PopulateRunAsComboBox() {
+            if (runAsAccountsList != null && runAsAccountsList.Count > 0) return;
+
+            var monitoringSecureData = ManagementGroup.Security.GetSecureData();
+
+            runAsAccountsList = new List<RunAsAccountWrapper>();
+            foreach (var data in monitoringSecureData) {
+                if (data.SecureDataType != SecureDataType.Simple &&
+                    data.SecureDataType != SecureDataType.Basic) continue;
+                cbRunAsAccount.Items.Add(data.Name);
+                runAsAccountsList.Add(new RunAsAccountWrapper(data));
+            }
+        }
+
+        private void SetSharedUserData() {
+            SharedUserData[SharedUserDataAmbariUri] = txtAmbariUri.Text;
+
+            if (cbRunAsAccount.SelectedIndex < 0) return;
+            var account = runAsAccountsList[cbRunAsAccount.SelectedIndex];
+            SharedUserData[SharedUserDataRunAsId] = account.AccountStorageIdString;
+            SharedUserData[SharedUserDataRunAsName] = account.AccountName;
+            SharedUserData[SharedUserDataRunAsSsid] = account.AccountStorageIdByteArray;
+        }
+
+        private bool ValidatePageConfiguration() {
+            if (String.IsNullOrEmpty(txtAmbariUri.Text.Trim()) ||
+                cbRunAsAccount.SelectedIndex < 0)
+                return false;
+            SetSharedUserData();
+            return true;
+        }
+
+        private void ValidatePageConfigurationEventHandler(object sender, EventArgs e) {
+            IsConfigValid = ValidatePageConfiguration();
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-ambari/blob/873b3502/contrib/ambari-scom/management-pack/Hadoop_MP/ScomPages/DiscoveryTemplate/AmbariDetailsPage.resx
----------------------------------------------------------------------
diff --git a/contrib/ambari-scom/management-pack/Hadoop_MP/ScomPages/DiscoveryTemplate/AmbariDetailsPage.resx b/contrib/ambari-scom/management-pack/Hadoop_MP/ScomPages/DiscoveryTemplate/AmbariDetailsPage.resx
new file mode 100644
index 0000000..525bd88
--- /dev/null
+++ b/contrib/ambari-scom/management-pack/Hadoop_MP/ScomPages/DiscoveryTemplate/AmbariDetailsPage.resx
@@ -0,0 +1,136 @@
+<?xml version="1.0" encoding="utf-8"?>
+<root>
+<!--## Licensed to the Apache Software Foundation (ASF) under one
+## or more contributor license agreements.  See the NOTICE file
+## distributed with this work for additional information
+## regarding copyright ownership.  The ASF licenses this file
+## to you 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.-->
+  <!-- 
+    Microsoft ResX Schema 
+    
+    Version 2.0
+    
+    The primary goals of this format is to allow a simple XML format 
+    that is mostly human readable. The generation and parsing of the 
+    various data types are done through the TypeConverter classes 
+    associated with the data types.
+    
+    Example:
+    
+    ... ado.net/XML headers & schema ...
+    <resheader name="resmimetype">text/microsoft-resx</resheader>
+    <resheader name="version">2.0</resheader>
+    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
+    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
+    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
+    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
+    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
+        <value>[base64 mime encoded serialized .NET Framework object]</value>
+    </data>
+    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
+        <comment>This is a comment</comment>
+    </data>
+                
+    There are any number of "resheader" rows that contain simple 
+    name/value pairs.
+    
+    Each data row contains a name, and value. The row also contains a 
+    type or mimetype. Type corresponds to a .NET class that support 
+    text/value conversion through the TypeConverter architecture. 
+    Classes that don't support this are serialized and stored with the 
+    mimetype set.
+    
+    The mimetype is used for serialized objects, and tells the 
+    ResXResourceReader how to depersist the object. This is currently not 
+    extensible. For a given mimetype the value must be set accordingly:
+    
+    Note - application/x-microsoft.net.object.binary.base64 is the format 
+    that the ResXResourceWriter will generate, however the reader can 
+    read any of the formats listed below.
+    
+    mimetype: application/x-microsoft.net.object.binary.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
+            : and then encoded with base64 encoding.
+    
+    mimetype: application/x-microsoft.net.object.soap.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
+            : and then encoded with base64 encoding.
+
+    mimetype: application/x-microsoft.net.object.bytearray.base64
+    value   : The object must be serialized into a byte array 
+            : using a System.ComponentModel.TypeConverter
+            : and then encoded with base64 encoding.
+    -->
+  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
+    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
+    <xsd:element name="root" msdata:IsDataSet="true">
+      <xsd:complexType>
+        <xsd:choice maxOccurs="unbounded">
+          <xsd:element name="metadata">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" />
+              </xsd:sequence>
+              <xsd:attribute name="name" use="required" type="xsd:string" />
+              <xsd:attribute name="type" type="xsd:string" />
+              <xsd:attribute name="mimetype" type="xsd:string" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="assembly">
+            <xsd:complexType>
+              <xsd:attribute name="alias" type="xsd:string" />
+              <xsd:attribute name="name" type="xsd:string" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="data">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
+              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
+              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="resheader">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" />
+            </xsd:complexType>
+          </xsd:element>
+        </xsd:choice>
+      </xsd:complexType>
+    </xsd:element>
+  </xsd:schema>
+  <resheader name="resmimetype">
+    <value>text/microsoft-resx</value>
+  </resheader>
+  <resheader name="version">
+    <value>2.0</value>
+  </resheader>
+  <resheader name="reader">
+    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <resheader name="writer">
+    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+</root>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-ambari/blob/873b3502/contrib/ambari-scom/management-pack/Hadoop_MP/ScomPages/DiscoveryTemplate/AmbariDetailsPageConfig.cs
----------------------------------------------------------------------
diff --git a/contrib/ambari-scom/management-pack/Hadoop_MP/ScomPages/DiscoveryTemplate/AmbariDetailsPageConfig.cs b/contrib/ambari-scom/management-pack/Hadoop_MP/ScomPages/DiscoveryTemplate/AmbariDetailsPageConfig.cs
new file mode 100644
index 0000000..ee4348c
--- /dev/null
+++ b/contrib/ambari-scom/management-pack/Hadoop_MP/ScomPages/DiscoveryTemplate/AmbariDetailsPageConfig.cs
@@ -0,0 +1,27 @@
+// Licensed to the Apache Software Foundation (ASF) under one
+// or more contributor license agreements.  See the NOTICE file
+// distributed with this work for additional information
+// regarding copyright ownership.  The ASF licenses this file
+// to you 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.
+
+using System;
+using System.Xml.Serialization;
+
+namespace Ambari.SCOM.ScomPages.DiscoveryTemplate {
+    [Serializable, XmlType(AnonymousType = true), XmlRoot(Namespace = "", IsNullable = false)]
+    public class AmbariDetailsPageConfig {
+        public string AmbariUri { get; set; }
+        public string RunAsAccount { get; set; }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-ambari/blob/873b3502/contrib/ambari-scom/management-pack/Hadoop_MP/ScomPages/DiscoveryTemplate/InputParser.cs
----------------------------------------------------------------------
diff --git a/contrib/ambari-scom/management-pack/Hadoop_MP/ScomPages/DiscoveryTemplate/InputParser.cs b/contrib/ambari-scom/management-pack/Hadoop_MP/ScomPages/DiscoveryTemplate/InputParser.cs
new file mode 100644
index 0000000..692b723
--- /dev/null
+++ b/contrib/ambari-scom/management-pack/Hadoop_MP/ScomPages/DiscoveryTemplate/InputParser.cs
@@ -0,0 +1,94 @@
+// Licensed to the Apache Software Foundation (ASF) under one
+// or more contributor license agreements.  See the NOTICE file
+// distributed with this work for additional information
+// regarding copyright ownership.  The ASF licenses this file
+// to you 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.
+
+using System;
+using System.ComponentModel;
+using System.Text.RegularExpressions;
+using Microsoft.EnterpriseManagement.Common;
+using Microsoft.EnterpriseManagement.Configuration;
+using Microsoft.EnterpriseManagement.Internal.UI.Authoring.Extensibility;
+using Microsoft.EnterpriseManagement.Mom.Internal.UI.Common;
+using Microsoft.EnterpriseManagement.UI;
+
+namespace Ambari.SCOM.ScomPages.DiscoveryTemplate {
+    public class InputParser : Component, IInputConfigurationParser {
+        private const string ClassNamePrefix = "Ambari.SCOM.AmbariSeed.";
+        private const string SeedDiscoveryNamePrefix = "Ambari.SCOM.Discovery.AmbariSeed.";
+        private const string ClustersDiscoveryNamePrefix = "Ambari.SCOM.Discovery.Clusters.";
+        private const string AccountOverrideNamePrefix = "Ambari.SCOM.Profile.Ambari.";
+        private static Regex AmbariUriNodeRegex = new Regex("<AmbariUri>([^<]*)</AmbariUri>", RegexOptions.CultureInvariant | RegexOptions.Compiled);
+        private static Regex WatcherNodesListNodeRegex = new Regex("<WatcherNodesList>([^<]*)</WatcherNodesList>", RegexOptions.CultureInvariant | RegexOptions.Compiled);
+        private static Regex SeedComputerNameNodeRegex = new Regex("<ComputerName>([^<]*)</ComputerName>", RegexOptions.CultureInvariant | RegexOptions.Compiled);
+
+        public InputParser(IContainer parentContainer) {
+            if (parentContainer != null) {
+                parentContainer.Add(this);
+            }
+        }
+
+        private void GetDiscoveryConfig(ITemplateContext templateContext, TemplateInputConfig templateConfig) {
+            foreach (var discovery in SDKHelper.GetFolderItems<ManagementPackDiscovery>(this, templateContext.OutputFolder)) {
+                var discoveryConfig = discovery.DataSource.Configuration;
+
+                if (discovery.Name.StartsWith(ClustersDiscoveryNamePrefix, StringComparison.OrdinalIgnoreCase)) {
+                    if (WatcherNodesListNodeRegex.IsMatch(discoveryConfig))
+                        templateConfig.WatcherNodesList = WatcherNodesListNodeRegex.Match(discoveryConfig).Groups[1].Value;
+                } else if (discovery.Name.StartsWith(SeedDiscoveryNamePrefix, StringComparison.OrdinalIgnoreCase)) {
+                    if (SeedComputerNameNodeRegex.IsMatch(discoveryConfig))
+                        templateConfig.SeedComputerName = SeedComputerNameNodeRegex.Match(discoveryConfig).Groups[1].Value;
+                    if (AmbariUriNodeRegex.IsMatch(discoveryConfig))
+                        templateConfig.AmbariUri = AmbariUriNodeRegex.Match(discoveryConfig).Groups[1].Value;
+                }
+            }
+        }
+
+        private string GetRunAsAccounts(ITemplateContext templateContext) {
+            var folderItems = SDKHelper.GetFolderItems<ManagementPackSecureReferenceOverride>(this, templateContext.OutputFolder);
+            foreach (var @override in folderItems) {
+                if (@override.Name.StartsWith(AccountOverrideNamePrefix, StringComparison.OrdinalIgnoreCase)) {
+                    return @override.Value;
+                }
+            }
+            return String.Empty;
+        }
+
+        private string GetTemplateIdString(ITemplateContext templateContext) {
+            foreach (var mpClass in SDKHelper.GetFolderItems<ManagementPackClass>(this, templateContext.OutputFolder)) {
+                if (mpClass.Name.StartsWith(ClassNamePrefix, StringComparison.OrdinalIgnoreCase)) {
+                    return mpClass.Name.Remove(0, ClassNamePrefix.Length);
+                }
+            }
+            throw new ObjectNotFoundException("No Hadoop Cluster class found in the template. Template instance may be corrupted. Try to remove and recreate the template.");
+        }
+
+        public bool LoadConfigurationXml(IPageContext pageContext) {
+            var templateContext = pageContext as ITemplateContext;
+            if (templateContext == null)
+                throw new InvalidOperationException("No template context provided for Input Parser. Configuration could not be loaded.");
+            
+            var templateConfig = new TemplateInputConfig {
+                Name = templateContext.OutputFolder.DisplayName,
+                Description = templateContext.OutputFolder.Description,
+                RunAsAccount = GetRunAsAccounts(templateContext),
+                TemplateIdString = GetTemplateIdString(templateContext)
+            };
+            GetDiscoveryConfig(templateContext, templateConfig);
+            pageContext.ConfigurationXml = XmlHelper.Serialize(templateConfig, false);
+            return true;
+        }
+    }
+}