@Override
public String getLoginDialogUrl(String appId, String redirectUri, ScopeBuilder scope, Parameter... parameters) {
verifyParameterPresence("appId", appId);
verifyParameterPresence("redirectUri", redirectUri);
verifyParameterPresence("scope", scope);
String dialogUrl = getFacebookEndpointUrls().getFacebookEndpoint() + "/dialog/oauth";
List<Parameter> parameterList = new ArrayList<>();
parameterList.add(Parameter.with("client_id", appId));
parameterList.add(Parameter.with("redirect_uri", redirectUri));
parameterList.add(Parameter.with("scope", scope.toString()));
Collections.addAll(parameterList, parameters);
return dialogUrl + "?" + toParameterString(false, parameterList.toArray(new Parameter[parameterList.size()]));
}