package mediawiki.info.wikibase; import mediawiki.MediaWikiConnection; import mediawiki.MediaWikiRequest; import mediawiki.info.Language; import mediawiki.request.wikibase.GetEntityRequest; public class WikibaseSet { private MediaWikiConnection connection; private String namespace; private Language preferredLanguage; public WikibaseSet(MediaWikiConnection w, String namespace, Language lang) { setConnection(w); setNamespace(namespace); setPreferredLanguage(preferredLanguage); } public MediaWikiConnection getConnection() { return connection; } public String getNamespace() { return namespace; } public Language getPreferredLanguage() { return preferredLanguage; } public void setConnection(MediaWikiConnection wikibase) { this.connection = wikibase; } public void setNamespace(String namespace) { this.namespace = namespace; } public void setPreferredLanguage(Language preferredLanguage) { this.preferredLanguage = preferredLanguage; } public <T> T request(MediaWikiRequest<T> r) throws Exception { return connection.request(r); } public String localize(Localizable l) throws Exception { return l.getLocalString(getConnection(), getPreferredLanguage()); } public Entity getEntity(String identifer) throws Exception { return connection.request(new GetEntityRequest(identifer)); } }