/** * * Copyright (c) 2006-2017, Speedment, Inc. All Rights Reserved. * * 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.speedment.example; /** * * @author Emil Forslund * @since 1.0.0 */ public final class PersonImpl implements Person { private final long id; private final String firstname; private final String lastname; private PersonImpl(long id, String firstname, String lastname) { this.id = id; this.firstname = firstname; this.lastname = lastname; } @Override public long getId() { return id; } @Override public String getFirstname() { return firstname; } @Override public String getLastname() { return lastname; } public final static class Builder implements Person.Builder { private long id; private String firstname; private String lastname; @Override public Builder withId(long id) { this.id = id; return this; } @Override public Builder withFirstname(String firstname) { this.firstname = firstname; return this; } @Override public Builder withLastname(String lastname) { this.lastname = lastname; return this; } @Override public Person build() { return new PersonImpl(id, firstname, lastname); } } }