/* (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.web.repository; import java.io.IOException; import org.apache.wicket.model.LoadableDetachableModel; import org.geogig.geoserver.config.RepositoryInfo; import org.geogig.geoserver.config.RepositoryManager; import com.google.common.base.Throwables; /** * A RepositoryInfo detachable model that holds the store id to retrieve it on demand from the * catalog */ public class RepositoryInfoDetachableModel extends LoadableDetachableModel<RepositoryInfo> { private static final long serialVersionUID = -6829878983583733186L; String id; public RepositoryInfoDetachableModel(RepositoryInfo repoInfo) { super(repoInfo); this.id = repoInfo.getId(); } @Override protected RepositoryInfo load() { try { return RepositoryManager.get().get(id); } catch (IOException e) { throw Throwables.propagate(e); } } }