Class Address
- java.lang.Object
-
- net.codecrete.qrbill.generator.Address
-
- All Implemented Interfaces:
java.io.Serializable
public class Address extends java.lang.Object implements java.io.SerializableAddress of creditor or debtor.You can either set street, house number, postal code and town (type structured address) or address line 1 and 2 (type combined address elements). The type is automatically set once any of these fields is set. Before setting the fields, the address type is undetermined. If fields of both types are set, the address type becomes conflicting. Name and country code must always be set unless all fields are empty.
- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classAddress.TypeAddress type
-
Constructor Summary
Constructors Constructor Description Address()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidclear()Clears all fields and set the type toAddress.Type.UNDETERMINED.booleanequals(java.lang.Object o)java.lang.StringgetAddressLine1()Gets the address line 1java.lang.StringgetAddressLine2()Gets the address line 2java.lang.StringgetCountryCode()Gets the two-letter ISO country code.java.lang.StringgetHouseNo()Gets the house or building number.java.lang.StringgetName()Gets the name, either the first and last name of a natural person or the company name of a legal person.java.lang.StringgetPostalCode()Gets the postal codejava.lang.StringgetStreet()Gets the street.java.lang.StringgetTown()Gets the town.Address.TypegetType()Gets the address type.inthashCode()voidsetAddressLine1(java.lang.String addressLine1)Sets the address line 1.voidsetAddressLine2(java.lang.String addressLine2)Sets the address line 2.voidsetCountryCode(java.lang.String countryCode)Sets the two-letter ISO country codevoidsetHouseNo(java.lang.String houseNo)Sets the house or building number.voidsetName(java.lang.String name)Sets the name, either the first and last name of a natural person or the company name of a legal person.voidsetPostalCode(java.lang.String postalCode)Sets the postal codevoidsetStreet(java.lang.String street)Sets the street.voidsetTown(java.lang.String town)Sets the townjava.lang.StringtoString()
-
-
-
Method Detail
-
getType
public Address.Type getType()
Gets the address type.The address type is automatically set by either setting street / house number or address line 1 and 2. Before setting the fields, the address type is undetermined. If fields of both types are set, the address type becomes conflicting.
The address type can be reset by calling
clear().- Returns:
- address type
-
getName
public java.lang.String getName()
Gets the name, either the first and last name of a natural person or the company name of a legal person.- Returns:
- the name
-
setName
public void setName(java.lang.String name)
Sets the name, either the first and last name of a natural person or the company name of a legal person.The name is mandatory unless the entire address contains
nullor empty values.- Parameters:
name- the name
-
getAddressLine1
public java.lang.String getAddressLine1()
Gets the address line 1Address line 1 contains street name, house number or P.O. box.
This field is only used for combined elements addresses and is optional.
- Returns:
- address line 1
-
setAddressLine1
public void setAddressLine1(java.lang.String addressLine1)
Sets the address line 1.Address line 1 contains street name, house number or P.O. box.
Setting this field sets the address type to
Address.Type.COMBINED_ELEMENTSunless it's alreadyAddress.Type.STRUCTURED, in which case it becomesAddress.Type.CONFLICTING.This field is only used for combined elements addresses and is optional.
- Parameters:
addressLine1- address line 1
-
getAddressLine2
public java.lang.String getAddressLine2()
Gets the address line 2Address line 2 contains postal code and town.
This field is only used for combined elements addresses. For this type, it's mandatory.
- Returns:
- address line 2
-
setAddressLine2
public void setAddressLine2(java.lang.String addressLine2)
Sets the address line 2.Address line 2 contains postal code and town
Setting this field sets the address type to
Address.Type.COMBINED_ELEMENTSunless it's alreadyAddress.Type.STRUCTURED, in which case it becomesAddress.Type.CONFLICTING.This field is only used for combined elements addresses. For this type, it's mandatory.
- Parameters:
addressLine2- address line 2
-
getStreet
public java.lang.String getStreet()
Gets the street.This field is only used for structured addresses and is optional.
- Returns:
- the street
-
setStreet
public void setStreet(java.lang.String street)
Sets the street.This field must not contain the house or building number.
Setting this field sets the address type to
Address.Type.STRUCTUREDunless it's alreadyAddress.Type.COMBINED_ELEMENTS, in which case it becomesAddress.Type.CONFLICTING.This field is only used for structured addresses and is optional.
- Parameters:
street- the street
-
getHouseNo
public java.lang.String getHouseNo()
Gets the house or building number.This field is only used for structured addresses and is optional.
- Returns:
- the house number
-
setHouseNo
public void setHouseNo(java.lang.String houseNo)
Sets the house or building number.Setting this field sets the address type to
Address.Type.STRUCTUREDunless it's alreadyAddress.Type.COMBINED_ELEMENTS, in which case it becomesAddress.Type.CONFLICTING.This field is only used for structured addresses and is optional.
- Parameters:
houseNo- the house number
-
getPostalCode
public java.lang.String getPostalCode()
Gets the postal codeThis field is only used for structured addresses. For this type, it's mandatory.
- Returns:
- the postal code
-
setPostalCode
public void setPostalCode(java.lang.String postalCode)
Sets the postal codeSetting this field sets the address type to
Address.Type.STRUCTUREDunless it's alreadyAddress.Type.COMBINED_ELEMENTS, in which case it becomesAddress.Type.CONFLICTING.This field is only used for structured addresses. For this type, it's mandatory.
- Parameters:
postalCode- the postal code
-
getTown
public java.lang.String getTown()
Gets the town.This field is only used for structured addresses. For this type, it's mandatory.
- Returns:
- the town
-
setTown
public void setTown(java.lang.String town)
Sets the townSetting this field sets the address type to
Address.Type.STRUCTUREDunless it's alreadyAddress.Type.COMBINED_ELEMENTS, in which case it becomesAddress.Type.CONFLICTING.This field is only used for structured addresses. For this type, it's mandatory.
- Parameters:
town- the town
-
getCountryCode
public java.lang.String getCountryCode()
Gets the two-letter ISO country code.- Returns:
- the ISO country code
-
setCountryCode
public void setCountryCode(java.lang.String countryCode)
Sets the two-letter ISO country codeThe country code is mandatory unless the entire address contains
nullor empty values.- Parameters:
countryCode- the ISO country code
-
clear
public void clear()
Clears all fields and set the type toAddress.Type.UNDETERMINED.
-
equals
public boolean equals(java.lang.Object o)
- Overrides:
equalsin classjava.lang.Object
-
hashCode
public int hashCode()
- Overrides:
hashCodein classjava.lang.Object
-
toString
public java.lang.String toString()
- Overrides:
toStringin classjava.lang.Object
-
-