All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.onegini.sdk.model.Address Maven / Gradle / Ivy

There is a newer version: 5.92.0
Show newest version
/*
 * Copyright 2013-2020 Onegini b.v.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package com.onegini.sdk.model;

import com.neovisionaries.i18n.CountryCode;

/**
 * Represents the notion of postal address of a person
 */
public interface Address extends CollectionField {

  static final String ALTERNATIVE_ADDRESS_TAG = "ALTERNATIVE";

  /**
   * @return Numeric part of the house number, e.g. {@literal 9}
   */
  Integer getHouseNumber();

  /**
   * @return Any addition that further clarifies the house number, e.g. {@literal 2nd floor}, {@literal unit 101}
   */
  String getHouseNumberAddition();

  /**
   * @return name of the street, e.g. {@literal Main Street}
   */
  String getStreetName();

  /**
   * @return name of the city, e.g. {@literal Amsterdam}
   */
  String getCity();

  /**
   * @return postal code, e.g. {@literal 1000 AA} or {@literal 12345-6789}
   */
  String getPostalCode();

  /**
   * @return name of the region, province or state, e.g. {@literal California}
   */
  String getRegion();

  /**
   * @return {@link com.neovisionaries.i18n.CountryCode}
   */
  CountryCode getCountry();

  /**
   * In case of multiple addresses with different purposes, this flag indicates whether this address is used for the
   * "alternative" purpose.
   * 

* Examples are: billing/shipping, postal/residential. * * @return {@literal true} if this address is used for the "alternative" purpose */ boolean isAlternative(); /** * @return name of the company, e.g. {@literal Acme Inc.} * @since {@literal 4.04.00} */ String getCompanyName(); /** * @return 'To attention of' field in an address, e.g. {@literal John Doe} * @since {@literal 4.04.00} */ String getAttention(); }





© 2015 - 2024 Weber Informatics LLC | Privacy Policy