com.google.code.linkedinapi.client.CompaniesApiClient Maven / Gradle / Ivy
The newest version!
/*
* Copyright 2010-2011 Nabeel Mukhtar
*
* 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.code.linkedinapi.client;
import java.util.EnumSet;
import java.util.List;
import java.util.Map;
import java.util.Set;
import com.google.code.linkedinapi.client.enumeration.CompanyField;
import com.google.code.linkedinapi.client.enumeration.FacetField;
import com.google.code.linkedinapi.client.enumeration.ProductField;
import com.google.code.linkedinapi.client.enumeration.SearchParameter;
import com.google.code.linkedinapi.client.enumeration.SearchSortOrder;
import com.google.code.linkedinapi.schema.Companies;
import com.google.code.linkedinapi.schema.Company;
import com.google.code.linkedinapi.schema.CompanySearch;
import com.google.code.linkedinapi.schema.FacetType;
import com.google.code.linkedinapi.schema.Products;
/**
* The Interface CompaniesApiClient.
*/
public interface CompaniesApiClient extends LinkedInAuthenticationClient {
public static final Set COMPANY_FACETS = EnumSet.of(FacetType.LOCATION, FacetType.INDUSTRY, FacetType.NETWORK, FacetType.COMPANY_SIZE, FacetType.NUM_FOLLOWERS_RANGE, FacetType.FORTUNE);
/**
* Gets the company by id.
*
* @param id the id
*
* @return the company by id
*/
public Company getCompanyById(String id);
/**
* Gets the company by id.
*
* @param id the id
* @param companyFields the company fields
*
* @return the company by id
*/
public Company getCompanyById(String id, Set companyFields);
/**
* Gets the company by universal name.
*
* @param universalName the universal name
*
* @return the company by universal name
*/
public Company getCompanyByUniversalName(String universalName);
/**
* Gets the company by universal name.
*
* @param universalName the universal name
* @param companyFields the company fields
*
* @return the company by universal name
*/
public Company getCompanyByUniversalName(String universalName, Set companyFields);
/**
* Gets the companies by email domain.
*
* @param emailDomain the email domain
*
* @return the companies by email domain
*/
public Companies getCompaniesByEmailDomain(String emailDomain);
/**
* Gets the companies by email domain.
*
* @param emailDomain the email domain
* @param companyFields the company fields
*
* @return the companies by email domain
*/
public Companies getCompaniesByEmailDomain(String emailDomain, Set companyFields);
/**
* Gets the followed companies.
*
* @return the followed companies
*/
public Companies getFollowedCompanies();
/**
* Gets the followed companies.
*
* @param companyFields the company fields
*
* @return the followed companies
*/
public Companies getFollowedCompanies(Set companyFields);
/**
* Follow company.
*
* @param id the id
*/
public void followCompany(String id);
/**
* Unfollow company.
*
* @param id the id
*/
public void unfollowCompany(String id);
/**
* Gets the suggested companies.
*
* @return the suggested companies
*/
public Companies getSuggestedCompanies();
/**
* Gets the suggested companies.
*
* @param companyFields the company fields
*
* @return the suggested companies
*/
public Companies getSuggestedCompanies(Set companyFields);
/**
* Gets the company products.
*
* @param id the id
*
* @return the company products
*/
public Products getCompanyProducts(String id);
/**
* Gets the company products.
*
* @param id the id
* @param productFields the product fields
*
* @return the company products
*/
public Products getCompanyProducts(String id, Set productFields);
/**
* Gets the company products.
*
* @param id the id
* @param start the start
* @param count the count
*
* @return the company products
*/
public Products getCompanyProducts(String id, int start, int count);
/**
* Gets the company products.
*
* @param id the id
* @param productFields the product fields
* @param start the start
* @param count the count
*
* @return the company products
*/
public Products getCompanyProducts(String id, Set productFields, int start, int count);
/**
* Search companies.
*
* @return the companies
*/
public Companies searchCompanies();
/**
* Search companies.
*
* @param searchParameters the search parameters
*
* @return the companies
*/
public Companies searchCompanies(Map searchParameters);
/**
* Search companies.
*
* @param searchParameters the search parameters
* @param start the start
* @param count the count
*
* @return the companies
*/
public Companies searchCompanies(Map searchParameters, int start, int count);
/**
* Search companies.
*
* @param searchParameters the search parameters
* @param sortOrder the sort order
*
* @return the companies
*/
public Companies searchCompanies(Map searchParameters, SearchSortOrder sortOrder);
/**
* Search companies.
*
* @param searchParameters the search parameters
* @param start the start
* @param count the count
* @param sortOrder the sort order
*
* @return the companies
*/
public Companies searchCompanies(Map searchParameters, int start, int count,
SearchSortOrder sortOrder);
/**
* Search companies.
*
* @param searchParameters the search parameters
* @param companyFields the company fields
*
* @return the companies
*/
public Companies searchCompanies(Map searchParameters, Set companyFields);
/**
* Search companies.
*
* @param searchParameters the search parameters
* @param companyFields the company fields
* @param start the start
* @param count the count
*
* @return the companies
*/
public Companies searchCompanies(Map searchParameters, Set companyFields, int start, int count);
/**
* Search companies.
*
* @param searchParameters the search parameters
* @param companyFields the company fields
* @param sortOrder the sort order
*
* @return the companies
*/
public Companies searchCompanies(Map searchParameters, Set companyFields, SearchSortOrder sortOrder);
/**
* Search companies.
*
* @param searchParameters the search parameters
* @param companyFields the company fields
* @param start the start
* @param count the count
* @param sortOrder the sort order
*
* @return the companies
*/
public Companies searchCompanies(Map searchParameters, Set companyFields, int start, int count,
SearchSortOrder sortOrder);
// Faceted Search
/**
* Search companies.
*
* @param searchParameters the search parameters
* @param facets the facets
*
* @return the companies
*/
public Companies searchCompanies(Map searchParameters, List> facets);
/**
* Search companies.
*
* @param searchParameters the search parameters
* @param start the start
* @param count the count
* @param facets the facets
*
* @return the companies
*/
public Companies searchCompanies(Map searchParameters, int start, int count, List> facets);
/**
* Search companies.
*
* @param searchParameters the search parameters
* @param sortOrder the sort order
* @param facets the facets
*
* @return the companies
*/
public Companies searchCompanies(Map searchParameters, SearchSortOrder sortOrder, List> facets);
/**
* Search companies.
*
* @param searchParameters the search parameters
* @param start the start
* @param count the count
* @param sortOrder the sort order
* @param facets the facets
*
* @return the companies
*/
public Companies searchCompanies(Map searchParameters, int start, int count,
SearchSortOrder sortOrder, List> facets);
/**
* Search companies.
*
* @param searchParameters the search parameters
* @param companyFields the company fields
* @param facets the facets
*
* @return the companies
*/
public Companies searchCompanies(Map searchParameters, Set companyFields, List> facets);
/**
* Search companies.
*
* @param searchParameters the search parameters
* @param companyFields the company fields
* @param start the start
* @param count the count
* @param facets the facets
*
* @return the companies
*/
public Companies searchCompanies(Map searchParameters, Set companyFields, int start, int count, List> facets);
/**
* Search companies.
*
* @param searchParameters the search parameters
* @param companyFields the company fields
* @param sortOrder the sort order
* @param facets the facets
*
* @return the companies
*/
public Companies searchCompanies(Map searchParameters, Set companyFields, SearchSortOrder sortOrder, List> facets);
/**
* Search companies.
*
* @param searchParameters the search parameters
* @param companyFields the company fields
* @param start the start
* @param count the count
* @param sortOrder the sort order
* @param facets the facets
*
* @return the companies
*/
public Companies searchCompanies(Map searchParameters, Set companyFields, int start, int count,
SearchSortOrder sortOrder, List> facets);
// Facets and Companies
/**
* Search companies.
*
* @param searchParameters the search parameters
* @param companyFields the company fields
* @param facetFields the facet fields
*
* @return the company search
*/
public CompanySearch searchCompanies(Map searchParameters, Set companyFields, Set facetFields);
/**
* Search companies.
*
* @param searchParameters the search parameters
* @param companyFields the company fields
* @param facetFields the facet fields
* @param start the start
* @param count the count
*
* @return the company search
*/
public CompanySearch searchCompanies(Map searchParameters, Set companyFields, Set facetFields, int start, int count);
/**
* Search companies.
*
* @param searchParameters the search parameters
* @param companyFields the company fields
* @param facetFields the facet fields
* @param sortOrder the sort order
*
* @return the company search
*/
public CompanySearch searchCompanies(Map searchParameters, Set companyFields, Set facetFields, SearchSortOrder sortOrder);
/**
* Search companies.
*
* @param searchParameters the search parameters
* @param companyFields the company fields
* @param facetFields the facet fields
* @param start the start
* @param count the count
* @param sortOrder the sort order
*
* @return the company search
*/
public CompanySearch searchCompanies(Map searchParameters, Set companyFields, Set facetFields, int start, int count,
SearchSortOrder sortOrder);
/**
* Search companies.
*
* @param searchParameters the search parameters
* @param companyFields the company fields
* @param facetFields the facet fields
* @param facets the facets
*
* @return the company search
*/
public CompanySearch searchCompanies(Map searchParameters, Set companyFields, Set facetFields, List> facets);
/**
* Search companies.
*
* @param searchParameters the search parameters
* @param companyFields the company fields
* @param facetFields the facet fields
* @param start the start
* @param count the count
* @param facets the facets
*
* @return the company search
*/
public CompanySearch searchCompanies(Map searchParameters, Set companyFields, Set facetFields, int start, int count, List> facets);
/**
* Search companies.
*
* @param searchParameters the search parameters
* @param companyFields the company fields
* @param facetFields the facet fields
* @param sortOrder the sort order
* @param facets the facets
*
* @return the company search
*/
public CompanySearch searchCompanies(Map searchParameters, Set companyFields, Set facetFields, SearchSortOrder sortOrder, List> facets);
/**
* Search companies.
*
* @param searchParameters the search parameters
* @param companyFields the company fields
* @param facetFields the facet fields
* @param start the start
* @param count the count
* @param sortOrder the sort order
* @param facets the facets
*
* @return the company search
*/
public CompanySearch searchCompanies(Map searchParameters, Set companyFields, Set facetFields, int start, int count,
SearchSortOrder sortOrder, List> facets);
}