question: private boolean createSCSIInitiatorsAndStoragePorts ( StorageSystem storageSystem , String protectionDomainName , DiscoveredDataObject . CompatibilityStatus compatibilityStatus , String installationId , List < ScaleIOScsiInitiator > allSCSIInitiators , List < ScaleIOSDC > allSDCs , List < StoragePort > ports ) throws IOException { boolean hasSCSIInitiators = false ; if ( allSDCs != null && allSCSIInitiators != null && ! allSCSIInitiators . isEmpty ( ) ) { List < String > initiatorsToAddToNetwork = new ArrayList < > ( ) ; String networkId = String . format ( "%s-IP" , installationId ) ; Network networkForSCSIInitiators = createIPNetworkForSCSIInitiators ( networkId ) ; for ( ScaleIOScsiInitiator scsiInit : allSCSIInitiators ) { String id = scsiInit . getId ( ) ; String iqn = scsiInit . getIqn ( ) ; Initiator initiator = createSCSIInitiator ( iqn , id ) ; if ( ! networkForSCSIInitiators . hasEndpoint ( initiator . getInitiatorPort ( ) ) ) { initiatorsToAddToNetwork . add ( initiator . getInitiatorPort ( ) ) ; } hasSCSIInitiators = true ; } if ( ! initiatorsToAddToNetwork . isEmpty ( ) ) { networkForSCSIInitiators . addEndpoints ( initiatorsToAddToNetwork , true ) ; _dbClient . updateAndReindexObject ( networkForSCSIInitiators ) ; } List < StoragePort > iSCSIPorts = createSCSIStoragePorts ( storageSystem , protectionDomainName , compatibilityStatus , networkForSCSIInitiators , allSDCs ) ; ports . addAll ( iSCSIPorts ) ; } return hasSCSIInitiators ; }
target:  This will create an IP network for the SIO system to contain the iSCSI initiators associated with the system (if any). It will also create the iSCSI initiators and StoragePorts, placing them in the IP network.