/* (c) 2016 Open Source Geospatial Foundation - all rights reserved * This code is licensed under the GPL 2.0 license, available at the root * application directory. */ package org.geogig.geoserver.model; import org.apache.wicket.model.IModel; import org.geogig.geoserver.config.RepositoryInfo; /** * Wicket IModel implementation for storing a GeoGig repository name. This model is used by all * GeoGig repository configuration types and wraps {@link RepositoryInfo} to handle the repo name * for the UI. */ public class RepoNameModel implements IModel<String> { private static final long serialVersionUID = 1L; private final IModel<RepositoryInfo> repoModel; private String repoName; public RepoNameModel(IModel<RepositoryInfo> repoModel) { super(); this.repoModel = repoModel; } @Override public String getObject() { if (repoName == null) { repoName = repoModel.getObject().getRepoName(); } return repoName; } @Override public void setObject(String object) { repoName = object; } @Override public void detach() { if (repoModel != null) { repoModel.detach(); } repoName = null; } }