// Path: src/main/java/net/rithms/riot/api/endpoints/static_data/StaticDataApiMethod.java
// abstract public class StaticDataApiMethod extends ApiMethod {
// 
// 	protected StaticDataApiMethod(ApiConfig config) {
// 		super(config, "staticdata");
// 		requireApiKey();
// 	}
// }


import net.rithms.riot.api.ApiConfig;
import net.rithms.riot.api.UrlParameter;
import net.rithms.riot.api.endpoints.static_data.StaticDataApiMethod;
import net.rithms.riot.api.endpoints.static_data.constant.ItemTags;
import net.rithms.riot.api.endpoints.static_data.constant.Locale;
import net.rithms.riot.api.endpoints.static_data.dto.Item;
import net.rithms.riot.constant.Platform;

/*
 * Copyright 2016 Taylor Caldwell
 *
 * 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 net.rithms.riot.api.endpoints.static_data.methods;


public class GetDataItem extends StaticDataApiMethod {

	public GetDataItem(ApiConfig config, Platform platform, int id, Locale locale, String version, ItemTags... tags) {
		super(config);
		setPlatform(platform);
		setReturnType(Item.class);
		setUrlBase(platform.getHost() + "/lol/static-data/v3/items/" + id);
		if (locale != null) {
			add(new UrlParameter("locale", locale));
		}
		if (version != null) {
			add(new UrlParameter("version", version));
		}
		if (tags != null) {
			for (ItemTags tag : tags) {

// Path: src/main/java/net/rithms/riot/api/endpoints/static_data/StaticDataApiMethod.java
// abstract public class StaticDataApiMethod extends ApiMethod {
// 
// 	protected StaticDataApiMethod(ApiConfig config) {
// 		super(config, "staticdata");
// 		requireApiKey();
// 	}
// }


// Path: src/main/java/net/rithms/riot/api/endpoints/static_data/methods/GetDataItem.java
import net.rithms.riot.api.ApiConfig;
import net.rithms.riot.api.UrlParameter;
import net.rithms.riot.api.endpoints.static_data.StaticDataApiMethod;
import net.rithms.riot.api.endpoints.static_data.constant.ItemTags;
import net.rithms.riot.api.endpoints.static_data.constant.Locale;
import net.rithms.riot.api.endpoints.static_data.dto.Item;
import net.rithms.riot.constant.Platform;

/*
 * Copyright 2016 Taylor Caldwell
 *
 * 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 net.rithms.riot.api.endpoints.static_data.methods;


public class GetDataItem extends StaticDataApiMethod {

	public GetDataItem(ApiConfig config, Platform platform, int id, Locale locale, String version, ItemTags... tags) {
		super(config);
		setPlatform(platform);
		setReturnType(Item.class);
		setUrlBase(platform.getHost() + "/lol/static-data/v3/items/" + id);
		if (locale != null) {
			add(new UrlParameter("locale", locale));
		}
		if (version != null) {
			add(new UrlParameter("version", version));
		}
		if (tags != null) {
			for (ItemTags tag : tags) {

				add(new UrlParameter("tags", tag));
