splitSubdomainInDomains static method
Splits the given domain
in seperate domain names for each subdomain.
Example:
sub2.sub1.domain.com => 'sub2.sub1.domain.com', 'sub1.domain.com', 'domain.com'
Implementation
static List<String> splitSubdomainInDomains(String name) {
var domains = <String>[];
var ar = name.split('\.');
for (var i = 0; i < ar.length; i++) {
var sb = StringBuffer();
for (var j = i; j < ar.length; j++) {
sb.write(ar[j]);
sb.write('.');
}
var domain = sb.toString();
domain = domain.substring(0, domain.length - 1);
if (ar.length - i == 3) {
var splitted = splitDomainName(domain);
if (isSubTld(splitted.elementAt(2), splitted.elementAt(1))) {
domains.add(domain);
break;
}
}
if (ar.length - i == 2) {
domains.add(domain);
break;
}
domains.add(domain);
}
return domains;
}