SearchSpecification

public struct SearchSpecification

This struct is what we use to prescribe the search spec.

Search specifications are quite simple. We only have the meeting type, location/radius (for in-person meetings), and paging options (to break up large found sets).

  • Declaration

    Swift

    public enum SearchForMeetingType
  • The number of results per page. If this is 0, then no results are returned, and only the meta is populated. If left out, or set to a negative number, then all results are returned in one page.

    Declaration

    Swift

    public let pageSize: Int
  • The page number (0-based). If pageSize is 0 or less, this is ignored. If over the maximum number of pages, an empty page is returned.

    Declaration

    Swift

    public let pageNumber: Int
  • The type of meeting.

    Declaration

    Swift

    public let type: SearchForMeetingType
  • The radius, in meters, of a location-based search. If this is 0 (or negative), then there will not be a location-based search. Ignored if the type is exclusive virtual.

    Declaration

    Swift

    public let locationRadius: Double
  • The center of a location-based search. If locationRadius is 0, or less, then this is ignored. It also must be a valid long/lat, or there will not be a location-based search. Ignored if the type is exclusive virtual.

    Declaration

    Swift

    public let locationCenter: CLLocationCoordinate2D
  • This is the default initializer. All parameters are optional, with blank/none defaults.

    Declaration

    Swift

    public init(type inType: SearchForMeetingType = .any,
                locationCenter inLocationCenter: CLLocationCoordinate2D = CLLocationCoordinate2D(),
                locationRadius inLocationRadius: Double = 0,
                pageSize inPageSize: Int = -1,
                page inPageNumber: Int = 0
    )

    Parameters

    type

    The meeting type. Default is any type.

    locationCenter

    The center of a location-based search. If locationRadius is 0, or less, then this is ignored. It also must be a valid long/lat, or there will not be a location-based search. Ignored if the type is exclusive virtual.

    locationRadius

    The radius, in meters, of a location-based search. If this is 0 (or negative), then there will not be a location-based search. Ignored if the type is exclusive virtual.

    pageSize

    The number of results per page. If this is 0, then no results are returned, and only the meta is populated. If left out, or set to a negative number, then all results are returned in one page.

    page

    The page number (0-based). If pageSize is 0 or less, this is ignored. If over the maximum number of pages, an empty page is returned.