public String[] ToPostalLabel(IPerson person) { // TODO: There might be some Regex errors here that do not work exactly in C# as in Java String newLine = Environment.NewLine; // name String nameString = StringUtils.format("{0} {1} {2}", person.firstname(), person.middelname(), person.lastname() ); nameString = Regex.Replace(nameString, "\\s{2,}", " "); // Address String addressString = ""; if (person.address() != null) { IAddress address = person.address(); switch (person.address().addressType()) { case EAddressType.Danish: IDanishAddress danishAddress = address.danishAddress(); addressString = StringUtils.format("{0} {1} {2} {3}", danishAddress.streetName(), danishAddress.streetBuildingIdentifier(), danishAddress.floor(), danishAddress.suite()) + newLine + StringUtils.format("{0}", danishAddress.districtSubdivision()) + newLine + StringUtils.format("{0} {1}", danishAddress.postCode(), danishAddress.postDistrikt()); break; case EAddressType.Greenlandic: IGreenlandicAddress greenlandicAddress = address.greenlandicAddress(); addressString = StringUtils.format("{0} {1} {2} {3}", greenlandicAddress.streetName(), greenlandicAddress.streetBuilding(), greenlandicAddress.floor(), greenlandicAddress.suite()) + newLine + StringUtils.format("{0}", greenlandicAddress.districtSubdivision()) + newLine + StringUtils.format("{0} {1}", greenlandicAddress.postCode(), greenlandicAddress.districtName()); break; case EAddressType.World: IWorldAddress worldAddress = address.worldAddress(); addressString = string.Format("{0}", worldAddress.postalAddressFirstLineText()) + newLine + StringUtils.format("{0}", worldAddress.postalAddressSecondLineText()) + newLine + StringUtils.format("{0}", worldAddress.postalAddressThirdLineText()) + newLine + StringUtils.format("{0}", worldAddress.postalAddressFourthLineText()) + newLine + StringUtils.format("{0}", worldAddress.postalAddressFifthLineText()) + newLine; break; } addressString = Regex.Replace(addressString, " " + newLine, newLine); addressString = Regex.Replace(addressString, "[ ]{2,}", " "); addressString = Regex.Replace(addressString, "(" + newLine + "){2,}", newLine); } String ret = nameString + newLine + addressString; ret = Regex.Replace(ret, "(" + newLine + "){2,}", newLine); return(ret.Split(newLine.ToCharArray(), StringSplitOptions.RemoveEmptyEntries)); }
private AdresseType getAdresseType(IDanishAddress address) { String streetName = null, houseNumber = null, floor = null, door = null, districtSubdivision = null, postCode = null, postDistrict = null; streetName = address.streetName(); houseNumber = address.streetBuilding(); floor = address.floor(); door = address.suite(); districtSubdivision = address.districtSubdivision(); postCode = address.postCode(); postDistrict = address.postDistrikt(); AdresseType ret = new AdresseType(); DanskAdresseType danskAdresse = new DanskAdresseType(); danskAdresse.PostDistriktTekst = postDistrict; ret.Item = danskAdresse; AddressCompleteType addressComplete = new AddressCompleteType(); danskAdresse.AddressComplete = addressComplete; AddressAccessType addressAccess = new AddressAccessType(); addressAccess.StreetBuildingIdentifier = houseNumber; addressComplete.AddressAccess = addressAccess; AddressPostalType addressPostal = new AddressPostalType(); addressPostal.StreetName = streetName; addressPostal.FloorIdentifier = floor; addressPostal.SuiteIdentifier = door; addressPostal.DistrictSubdivisionIdentifier = districtSubdivision; addressPostal.PostCodeIdentifier = postCode; addressPostal.DistrictName = postDistrict; addressComplete.AddressPostal = addressPostal; return(ret); }