Example #1
0
        /// <summary>
        /// Create LogicalNetworkDefinition instance.
        /// </summary>
        /// <returns>LogicalNetworkDefinition instance.</returns>
        private LogicalNetworkDefinition CreateDefaultLogicalNetworkDefinition()
        {
            var logicalNetworkDefinition = new LogicalNetworkDefinition()
            {
                AllowsIntraPortCommunication = true, EditableByNonOwners = true,
                Id = HNVODLConstants.LOGICAL_NETWORK_DEFINITION.ID, IPSubnets = new IPSubnet[1],
                LastModifiedBySystemId       = HNVODLConstants.LOGICAL_NETWORK_DEFINITION.MANAGED_BY_NETWORKSERVICE_ID,
                LastModifiedTimeStamp        = DateTime.Now, LogicalNetworkId = HNVODLConstants.LOGICAL_NETWORK.LOGICALNETWORK_ID,
                ManagedByNetworkServiceId    = HNVODLConstants.LOGICAL_NETWORK_DEFINITION.MANAGED_BY_NETWORKSERVICE_ID,
                MarkedForDeletion            = HNVODLConstants.LOGICAL_NETWORK_DEFINITION.MARKED_FOR_DELETION,
                MaximumVMSubnetsPerVMNetwork = HNVODLConstants.LOGICAL_NETWORK_DEFINITION.MAXIMUM_VMSUBNETS_PER_VMNETWORK,
                Name        = HNVODLConstants.LOGICAL_NETWORK_DEFINITION.NAME, SegmentIds = new NetworkSegmentIdentifier[1],
                SegmentType = HNVODLConstants.LOGICAL_NETWORK_DEFINITION.SEGMENT_TYPE,
                SupportsIPSubnetConfigurationOnVMSubnets = HNVODLConstants.LOGICAL_NETWORK_DEFINITION.SUPPORTS_IPSUBNET_CONFIGURATIONON_VMSUBNETS,
                SupportsVMNetworkProvisioning            = HNVODLConstants.LOGICAL_NETWORK_DEFINITION.SUPPORTS_VMNETWORK_PROVISIONING
            };

            logicalNetworkDefinition.IPSubnets[0]  = this.CreateDefaultIPSubnet();
            logicalNetworkDefinition.SegmentIds[0] = this.CreateDefaultNetworkSegmentIdentifier();
            return(logicalNetworkDefinition);
        }
Example #2
0
        /// <summary>
        /// Verify whether the specified LogicalNetwork is HNV resource or not.
        /// </summary>
        /// <param name="logicalNetwork">LogicalNetwork instance.</param>
        /// <returns>True if HNV resource, else false.</returns>
        public bool IsHNVLogicalNetwork(LogicalNetwork logicalNetwork)
        {
            if (logicalNetwork == null)
            {
                return(false);
            }

            LogicalNetworkDefinition tmpLogicalNetworkDefinition =
                logicalNetwork.LogicalNetworkDefinitions.FirstOrDefault(l => l.Id == HNVODLConstants.LOGICAL_NETWORK_DEFINITION.ID);

            if (tmpLogicalNetworkDefinition != null &&
                tmpLogicalNetworkDefinition.ManagedByNetworkServiceId == VSEMODLConstants.SYSTEM_INFO_ID &&
                logicalNetwork.AreLogicalNetworkDefinitionsIsolated == false)
            {
                return(true);
            }
            ODLVSEMETW.EventWriteNotHNVLogicalNetwork(MethodBase.GetCurrentMethod().Name,
                                                      string.Format("LogicalNetwork name is {0}", logicalNetwork.Name));

            return(false);
        }
Example #3
0
        /// <summary>
        /// Validate whether the specified LogicalNetwork.LogicalNetworkDefinitions are correct configuration or not.
        /// </summary>
        /// <param name="logicalNetwork">LogicalNetwork instance.</param>
        /// <returns>True if correct configuraton, else false.</returns>
        private bool IsLogicalNetworkDefinitionsValid(LogicalNetwork logicalNetwork)
        {
            bool ret = true;

            for (int i = 0; i < logicalNetwork.LogicalNetworkDefinitions.Length; i++)
            {
                LogicalNetworkDefinition tmpLogicalNetworkDefinition = logicalNetwork.LogicalNetworkDefinitions[i];
                if (tmpLogicalNetworkDefinition.Id == HNVODLConstants.LOGICAL_NETWORK_DEFINITION.ID)
                {
                    continue;
                }
                else
                {
                    // Invalid NetworkSite.
                    string ErrorString =
                        string.Format(HNVODLConstants.ERROR_STRING.INVALID_NETWORKSITE, tmpLogicalNetworkDefinition.Name);
                    List <string> msg = new List <string>();
                    msg.Add(ErrorString);
                    tmpLogicalNetworkDefinition.SynchronizationErrors = msg.ToArray();
                    ret = false;
                }
            }
            return(ret);
        }
 /// <summary>
 /// Create LogicalNetworkDefinition instance.
 /// </summary>
 /// <returns>LogicalNetworkDefinition instance.</returns>
 private LogicalNetworkDefinition CreateDefaultLogicalNetworkDefinition()
 {
     var logicalNetworkDefinition = new LogicalNetworkDefinition() {
         AllowsIntraPortCommunication = true, EditableByNonOwners = true,
         Id = HNVODLConstants.LOGICAL_NETWORK_DEFINITION.ID, IPSubnets = new IPSubnet[1],
         LastModifiedBySystemId = HNVODLConstants.LOGICAL_NETWORK_DEFINITION.MANAGED_BY_NETWORKSERVICE_ID,
         LastModifiedTimeStamp = DateTime.Now, LogicalNetworkId = HNVODLConstants.LOGICAL_NETWORK.LOGICALNETWORK_ID,
         ManagedByNetworkServiceId = HNVODLConstants.LOGICAL_NETWORK_DEFINITION.MANAGED_BY_NETWORKSERVICE_ID,
         MarkedForDeletion = HNVODLConstants.LOGICAL_NETWORK_DEFINITION.MARKED_FOR_DELETION,
         MaximumVMSubnetsPerVMNetwork = HNVODLConstants.LOGICAL_NETWORK_DEFINITION.MAXIMUM_VMSUBNETS_PER_VMNETWORK,
         Name = HNVODLConstants.LOGICAL_NETWORK_DEFINITION.NAME, SegmentIds = new NetworkSegmentIdentifier[1],
         SegmentType = HNVODLConstants.LOGICAL_NETWORK_DEFINITION.SEGMENT_TYPE,
         SupportsIPSubnetConfigurationOnVMSubnets = HNVODLConstants.LOGICAL_NETWORK_DEFINITION.SUPPORTS_IPSUBNET_CONFIGURATIONON_VMSUBNETS,
         SupportsVMNetworkProvisioning = HNVODLConstants.LOGICAL_NETWORK_DEFINITION.SUPPORTS_VMNETWORK_PROVISIONING
     };
     logicalNetworkDefinition.IPSubnets[0] = this.CreateDefaultIPSubnet();
     logicalNetworkDefinition.SegmentIds[0] = this.CreateDefaultNetworkSegmentIdentifier();
     return logicalNetworkDefinition;
 }