/* Copyright (c) 2008 Google Inc. * * 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.google.gdata.client.sites; import com.google.gdata.client.Query; import java.net.URL; /** * Describes a query for the feed containing descriptions of a user's sites. * * */ public class SiteQuery extends Query { /** Include all sites that can be viewed. */ private String includeAllSites; /** Handle web address mappings. */ private Boolean withMappings; /** * Constructs a new query object that targets a feed. The initial state of * the query contains no parameters, meaning all entries in the feed would be * returned if the query was executed immediately after construction. * * @param feedUrl the URL of the feed against which queries will be executed. */ public SiteQuery(URL feedUrl) { super(feedUrl); } /** * Returns the include all sites that can be viewed. * * @return include all sites that can be viewed or <code>null</code> to * indicate that the parameter is not set. */ public String getIncludeAllSites() { return includeAllSites; } /** * Sets the include all sites that can be viewed. * * @param includeAllSites include all sites that can be viewed or * <code>null</code> to remove this parameter if set. */ public void setIncludeAllSites(String includeAllSites) { // check if setting to existing value if (this.includeAllSites == null ? includeAllSites != null : !this.includeAllSites.equals(includeAllSites)) { // set to new value for customer parameter this.includeAllSites = includeAllSites; setStringCustomParameter("include-all-sites", includeAllSites); } } /** * Returns the handle web address mappings. * * @return handle web address mappings or <code>null</code> to indicate that * the parameter is not set. */ public Boolean getWithMappings() { return withMappings; } /** * Sets the handle web address mappings. * * @param withMappings handle web address mappings or <code>null</code> to * remove this parameter if set. */ public void setWithMappings(Boolean withMappings) { // check if setting to existing value if (this.withMappings == null ? withMappings != null : !this.withMappings.equals(withMappings)) { // set to new value for customer parameter this.withMappings = withMappings; setStringCustomParameter("with-mappings", withMappings == null ? null : withMappings.toString()); } } }