1 package org
.asamk
.signal
.manager
;
3 import org
.asamk
.signal
.manager
.api
.UserAlreadyExistsException
;
4 import org
.asamk
.signal
.manager
.config
.ServiceConfig
;
5 import org
.asamk
.signal
.manager
.config
.ServiceEnvironment
;
8 import java
.io
.IOException
;
10 import java
.util
.concurrent
.TimeoutException
;
11 import java
.util
.function
.Consumer
;
13 public interface ProvisioningManager
{
15 static ProvisioningManager
init(
16 File settingsPath
, ServiceEnvironment serviceEnvironment
, String userAgent
18 return init(settingsPath
, serviceEnvironment
, userAgent
, null);
21 static ProvisioningManager
init(
23 ServiceEnvironment serviceEnvironment
,
25 Consumer
<Manager
> newManagerListener
27 var pathConfig
= PathConfig
.createDefault(settingsPath
);
29 final var serviceConfiguration
= ServiceConfig
.getServiceEnvironmentConfig(serviceEnvironment
, userAgent
);
31 return new ProvisioningManagerImpl(pathConfig
, serviceConfiguration
, userAgent
, newManagerListener
);
34 URI
getDeviceLinkUri() throws TimeoutException
, IOException
;
36 String
finishDeviceLink(String deviceName
) throws IOException
, TimeoutException
, UserAlreadyExistsException
;