Search in sources :

Example 16 with retrofit2.http

use of retrofit2.http in project mobile-sdk-android by meniga.

the class MockClient method getApi.

public static MenigaAPI getApi(Interceptor myInterceptor) {
    OkHttpClient client = new OkHttpClient.Builder().addInterceptor(myInterceptor).build();
    final Retrofit retrofit = new Retrofit.Builder().addConverterFactory(new MenigaTransactionsConverter()).addConverterFactory(new MenigaFeedConverter(new MockFeedItemFactory())).addConverterFactory(new MenigaCategoryConverter()).addConverterFactory(new MenigaOfferConverter()).addConverterFactory(new MenigaRedemptionConverter()).addConverterFactory(new MenigaReimbursementAccountConverter()).addConverterFactory(new MenigaIdNameKeyValConverter()).addConverterFactory(new MenigaChallengesConverter(new ChallengeItemFactory())).addConverterFactory(new MenigaFeedItemConverter(new MockFeedItemFactory())).addConverterFactory(new MenigaBaseConverter()).addConverterFactory(GsonConverterFactory.create()).baseUrl("http://meniga.is/api/").client(client).build();
    return retrofit.create(MenigaAPI.class);
}
Also used : OkHttpClient(okhttp3.OkHttpClient) MenigaFeedItemConverter(com.meniga.sdk.converters.MenigaFeedItemConverter) MenigaIdNameKeyValConverter(com.meniga.sdk.converters.MenigaIdNameKeyValConverter) MenigaFeedConverter(com.meniga.sdk.converters.MenigaFeedConverter) MenigaTransactionsConverter(com.meniga.sdk.converters.MenigaTransactionsConverter) MenigaReimbursementAccountConverter(com.meniga.sdk.converters.MenigaReimbursementAccountConverter) ChallengeItemFactory(com.meniga.sdk.helpers.ChallengeItemFactory) MockFeedItemFactory(com.meniga.sdk.helpers.MockFeedItemFactory) Retrofit(retrofit2.Retrofit) MenigaChallengesConverter(com.meniga.sdk.converters.MenigaChallengesConverter) MenigaBaseConverter(com.meniga.sdk.converters.MenigaBaseConverter) MenigaOfferConverter(com.meniga.sdk.converters.MenigaOfferConverter) MenigaCategoryConverter(com.meniga.sdk.converters.MenigaCategoryConverter) MenigaRedemptionConverter(com.meniga.sdk.converters.MenigaRedemptionConverter)

Example 17 with retrofit2.http

use of retrofit2.http in project instructure-android by instructure.

the class PublishPollActivity method setupCourseSpinner.

// /////////////////////////////////////////////////////////////////////////
// Helpers
// /////////////////////////////////////////////////////////////////////////
private void setupCourseSpinner(List<Course> courseList) {
    // We only want courses we're a teacher for if we're trying to publish a poll
    Iterator<Course> iterator = courseList.iterator();
    while (iterator.hasNext()) {
        if (!iterator.next().isTeacher()) {
            iterator.remove();
        }
    }
    if (courseList.size() == 0 || !courseList.get(0).getName().equals(getString(R.string.selectCourse))) {
        Course selectCourse = new Course();
        selectCourse.setId(Long.MIN_VALUE);
        selectCourse.setName(getString(R.string.selectCourse));
        courseList.add(0, selectCourse);
    }
    courseAdapter = new CourseSpinnerAdapter(this, android.R.layout.simple_spinner_dropdown_item, courseList);
    coursesSpinner.setAdapter(courseAdapter);
    coursesSpinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {

        @Override
        public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
            Course course = (Course) parent.getAdapter().getItem(position);
            // Handle the loading cell.
            if (course == null || course.getEnrollments() == null) {
                return;
            }
            if (!isCourseTermActive(course)) {
                AppMsg.makeText(PublishPollActivity.this, getString(R.string.courseTermInactive), AppMsg.STYLE_WARNING).show();
                return;
            }
            currentCourse = course;
            // unselect all the selections, if we don't it still thinks some are selected when we go to another course
            for (int i = 0; i < sectionListView.getCount(); i++) {
                sectionListView.setItemChecked(i, false);
            }
            SectionManager.getAllSectionsForCourse(course.getId(), new StatusCallback<List<Section>>() {

                @Override
                public void onResponse(@NonNull retrofit2.Response<List<Section>> response, @NonNull com.instructure.canvasapi2.utils.LinkHeaders linkHeaders, @NonNull ApiType type) {
                    setupSectionAdapter(response.body());
                    ApplicationManager.saveSections(PublishPollActivity.this, response.body(), ((Course) coursesSpinner.getSelectedItem()).getId());
                }
            }, true);
        }

        @Override
        public void onNothingSelected(AdapterView<?> parent) {
        }
    });
}
Also used : LinkHeaders(com.instructure.canvasapi2.utils.LinkHeaders) StatusCallback(com.instructure.canvasapi2.StatusCallback) BindView(butterknife.BindView) View(android.view.View) AdapterView(android.widget.AdapterView) TextView(android.widget.TextView) CheckedTextView(android.widget.CheckedTextView) ListView(android.widget.ListView) Section(com.instructure.canvasapi2.models.Section) PollSessionResponse(com.instructure.canvasapi2.models.PollSessionResponse) Response(retrofit2.Response) NonNull(android.support.annotation.NonNull) ApiType(com.instructure.canvasapi2.utils.ApiType) AdapterView(android.widget.AdapterView) Course(com.instructure.canvasapi2.models.Course)

Example 18 with retrofit2.http

use of retrofit2.http in project instructure-android by instructure.

the class CanvasRestAdapter method buildAdapterNoRedirects.

// region Adapter Builders
public Retrofit buildAdapterNoRedirects(@NonNull RestParams params) {
    if (params.getDomain() == null || params.getDomain().length() == 0) {
        params = new RestParams.Builder(params).withDomain(ApiPrefs.getFullDomain()).build();
    }
    if (mCallback != null) {
        mCallback.onCallbackStarted();
    }
    // Can make this check as we KNOW that the setter doesn't allow empty strings.
    if (params.getDomain().equals("")) {
        Logger.d("The RestAdapter hasn't been set up yet. Call setupInstance(context,token,domain)");
        return new Retrofit.Builder().baseUrl("http://invalid.domain.com/").build();
    }
    String apiContext = "";
    if (params.getCanvasContext() != null) {
        if (params.getCanvasContext().getType() == CanvasContext.Type.COURSE) {
            apiContext = "courses/";
        } else if (params.getCanvasContext().getType() == CanvasContext.Type.GROUP) {
            apiContext = "groups/";
        } else if (params.getCanvasContext().getType() == CanvasContext.Type.SECTION) {
            apiContext = "sections/";
        } else {
            apiContext = "users/";
        }
    }
    // Sets the auth token, user agent, and handles masquerading.
    final RestParams restParams = params;
    return new Retrofit.Builder().baseUrl(params.getDomain() + params.getAPIVersion() + apiContext).addConverterFactory(GsonConverterFactory.create()).callFactory(new Call.Factory() {

        @Override
        public Call newCall(Request request) {
            // Tag this request with the rest params so we can access them later in RequestInterceptor
            request = request.newBuilder().tag(restParams).build();
            return getOkHttpClientNoRedirects().newCall(request);
        }
    }).build();
}
Also used : RestParams(com.instructure.canvasapi2.builders.RestParams) GsonBuilder(com.google.gson.GsonBuilder) Request(okhttp3.Request) GsonConverterFactory(retrofit2.converter.gson.GsonConverterFactory)

Example 19 with retrofit2.http

use of retrofit2.http in project instructure-android by instructure.

the class CanvasRestAdapter method buildAdapterSerializeNulls.

public Retrofit buildAdapterSerializeNulls(@NonNull RestParams params) {
    if (params.getDomain() == null || params.getDomain().length() == 0) {
        params = new RestParams.Builder(params).withDomain(ApiPrefs.getFullDomain()).build();
    }
    if (mCallback != null) {
        mCallback.onCallbackStarted();
    }
    // Can make this check as we KNOW that the setter doesn't allow empty strings.
    if (params.getDomain().equals("")) {
        Logger.d("The RestAdapter hasn't been set up yet. Call setupInstance(context,token,domain)");
        return new Retrofit.Builder().baseUrl("http://invalid.domain.com/").build();
    }
    String apiContext = "";
    if (params.getCanvasContext() != null) {
        if (params.getCanvasContext().getType() == CanvasContext.Type.COURSE) {
            apiContext = "courses/";
        } else if (params.getCanvasContext().getType() == CanvasContext.Type.GROUP) {
            apiContext = "groups/";
        } else if (params.getCanvasContext().getType() == CanvasContext.Type.SECTION) {
            apiContext = "sections/";
        } else {
            apiContext = "users/";
        }
    }
    // Sets the auth token, user agent, and handles masquerading.
    final RestParams restParams = params;
    return new Retrofit.Builder().baseUrl(params.getDomain() + params.getAPIVersion() + apiContext).addConverterFactory(GsonConverterFactory.create(new GsonBuilder().serializeNulls().create())).callFactory(new Call.Factory() {

        @Override
        public Call newCall(Request request) {
            // Tag this request with the rest params so we can access them later in RequestInterceptor
            request = request.newBuilder().tag(restParams).build();
            return getOkHttpClient().newCall(request);
        }
    }).build();
}
Also used : RestParams(com.instructure.canvasapi2.builders.RestParams) GsonBuilder(com.google.gson.GsonBuilder) GsonBuilder(com.google.gson.GsonBuilder) Request(okhttp3.Request) GsonConverterFactory(retrofit2.converter.gson.GsonConverterFactory)

Example 20 with retrofit2.http

use of retrofit2.http in project autorest-clientruntime-for-java by Azure.

the class CredentialsTests method basicCredentialsTest.

@Test
public void basicCredentialsTest() throws Exception {
    BasicAuthenticationCredentials credentials = new BasicAuthenticationCredentials("user", "pass");
    OkHttpClient.Builder clientBuilder = new OkHttpClient.Builder();
    credentials.applyCredentialsFilter(clientBuilder);
    clientBuilder.addInterceptor(new Interceptor() {

        @Override
        public Response intercept(Chain chain) throws IOException {
            String header = chain.request().header("Authorization");
            Assert.assertEquals("Basic dXNlcjpwYXNz", header);
            return new Response.Builder().request(chain.request()).code(200).protocol(Protocol.HTTP_1_1).build();
        }
    });
    ServiceClient serviceClient = new ServiceClient("http://localhost", clientBuilder, new Retrofit.Builder()) {
    };
    Response response = serviceClient.httpClient().newCall(new Request.Builder().url("http://localhost").build()).execute();
    Assert.assertEquals(200, response.code());
}
Also used : OkHttpClient(okhttp3.OkHttpClient) BasicAuthenticationCredentials(com.microsoft.rest.credentials.BasicAuthenticationCredentials) IOException(java.io.IOException) Response(okhttp3.Response) Retrofit(retrofit2.Retrofit) Interceptor(okhttp3.Interceptor) Test(org.junit.Test)

Aggregations

Test (org.junit.Test)81 ResponseBody (okhttp3.ResponseBody)76 Request (okhttp3.Request)72 Retrofit (retrofit2.Retrofit)38 OkHttpClient (okhttp3.OkHttpClient)27 RequestBody (okhttp3.RequestBody)22 IOException (java.io.IOException)19 Query (retrofit2.http.Query)15 MultipartBody (okhttp3.MultipartBody)12 Buffer (okio.Buffer)12 Path (retrofit2.http.Path)12 Interceptor (okhttp3.Interceptor)11 HttpUrl (okhttp3.HttpUrl)10 Response (okhttp3.Response)10 HashMap (java.util.HashMap)9 LinkedHashMap (java.util.LinkedHashMap)9 Response (retrofit2.Response)9 Part (retrofit2.http.Part)9 List (java.util.List)8 QueryMap (retrofit2.http.QueryMap)8