Module: ITCAnalytics

Defined in:
lib/itc_analytics.rb,
lib/itc_analytics/version.rb,
lib/itc_analytics/use_cases/login.rb,
lib/itc_analytics/use_cases/exceptions.rb,
lib/itc_analytics/domain/entities/query.rb,
lib/itc_analytics/domain/entities/session.rb,
lib/itc_analytics/use_cases/get_app_installs.rb,
lib/itc_analytics/domain/entities/application.rb,
lib/itc_analytics/interfaces/controllers/http.rb,
lib/itc_analytics/use_cases/create_new_session.rb,
lib/itc_analytics/domain/entities/metrics_query.rb,
lib/itc_analytics/domain/entities/sources_query.rb,
lib/itc_analytics/interfaces/gateways/exceptions.rb,
lib/itc_analytics/domain/entities/analytics_query.rb,
lib/itc_analytics/interfaces/gateways/itunesconnect.rb,
lib/itc_analytics/domain/value_objects/group_options.rb,
lib/itc_analytics/domain/value_objects/metrics_options.rb,
lib/itc_analytics/domain/value_objects/sources_options.rb,
lib/itc_analytics/use_cases/get_available_applications.rb,
lib/itc_analytics/domain/value_objects/analytics_options.rb,
lib/itc_analytics/interfaces/repositories/session/inmemory.rb

Defined Under Namespace

Modules: Domain, Interfaces, UseCases

Constant Summary collapse

VERSION =
"0.2.0"

Class Attribute Summary collapse

Class Method Summary collapse

Class Attribute Details

.http_controllerObject

Returns the value of attribute http_controller.



14
15
16
# File 'lib/itc_analytics.rb', line 14

def http_controller
  @http_controller
end

.itunesconnect_gatewayObject

Returns the value of attribute itunesconnect_gateway.



15
16
17
# File 'lib/itc_analytics.rb', line 15

def itunesconnect_gateway
  @itunesconnect_gateway
end

.session_repositoryObject

Returns the value of attribute session_repository.



13
14
15
# File 'lib/itc_analytics.rb', line 13

def session_repository
  @session_repository
end

Class Method Details

.configure {|_self| ... } ⇒ Object

Yields:

  • (_self)

Yield Parameters:

  • _self (ITCAnalytics)

    the object that the method was called on



17
18
19
# File 'lib/itc_analytics.rb', line 17

def configure
	yield self 
end

.get_app_downloads_for_date_range(app_id, start_date, end_date) ⇒ Object



51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
# File 'lib/itc_analytics.rb', line 51

def get_app_downloads_for_date_range(app_id, start_date, end_date) 
  application = Domain::Entities::Application.new(
    itunes_app_id: app_id,
    itunes_app_name: nil,
    is_bundle: nil,
    icon_url: nil,
    asset_token: nil,
    platforms: nil,
    is_enabled: nil,
    app_opt_in_rate: nil
  )
  UseCases::GetAppInstalls.new(
    applications: [application],
    session_repository: session_repository,
    start_date: start_date,
    end_date: end_date,
    itunes_gateway: itunesconnect_gateway
  ).execute
end

.get_available_appsObject



44
45
46
47
48
49
# File 'lib/itc_analytics.rb', line 44

def get_available_apps
  UseCases::GetAvailableApplications.new(
    session_repository: session_repository,
    itunesconnect_gateway: itunesconnect_gateway
  ).execute
end

.login(user, pass) ⇒ Object



34
35
36
37
38
39
40
41
42
# File 'lib/itc_analytics.rb', line 34

def (user, pass)
	success = UseCases::Login.new(
		username: user, 
		password: pass, 
		session_repository: session_repository,
		itunesconnect_gateway: itunesconnect_gateway)
	.execute
	return success 
end