1 package org
.asamk
.signal
.manager
;
3 import org
.asamk
.signal
.manager
.config
.ServiceConfig
;
4 import org
.asamk
.signal
.manager
.config
.ServiceEnvironment
;
7 import java
.io
.IOException
;
9 import java
.util
.concurrent
.TimeoutException
;
10 import java
.util
.function
.Consumer
;
12 public interface ProvisioningManager
{
14 static ProvisioningManager
init(
15 File settingsPath
, ServiceEnvironment serviceEnvironment
, String userAgent
17 return init(settingsPath
, serviceEnvironment
, userAgent
, null);
20 static ProvisioningManager
init(
22 ServiceEnvironment serviceEnvironment
,
24 Consumer
<Manager
> newManagerListener
26 var pathConfig
= PathConfig
.createDefault(settingsPath
);
28 final var serviceConfiguration
= ServiceConfig
.getServiceEnvironmentConfig(serviceEnvironment
, userAgent
);
30 return new ProvisioningManagerImpl(pathConfig
, serviceConfiguration
, userAgent
, newManagerListener
);
33 URI
getDeviceLinkUri() throws TimeoutException
, IOException
;
35 String
finishDeviceLink(String deviceName
) throws IOException
, TimeoutException
, UserAlreadyExists
;