001package com.box.sdkgen.box.tokenstorage; 002 003import com.box.sdkgen.schemas.accesstoken.AccessToken; 004 005public class InMemoryTokenStorage implements TokenStorage { 006 private AccessToken token; 007 008 public InMemoryTokenStorage() { 009 this.token = null; 010 } 011 012 public InMemoryTokenStorage(AccessToken token) { 013 this.token = token; 014 } 015 016 protected InMemoryTokenStorage(Builder builder) { 017 this.token = builder.token; 018 } 019 020 @Override 021 public void store(AccessToken token) { 022 this.token = token; 023 } 024 025 @Override 026 public AccessToken get() { 027 return token; 028 } 029 030 @Override 031 public void clear() { 032 this.token = null; 033 } 034 035 public static class Builder { 036 037 protected AccessToken token; 038 039 public Builder token(AccessToken token) { 040 this.token = token; 041 return this; 042 } 043 044 public InMemoryTokenStorage build() { 045 return new InMemoryTokenStorage(this); 046 } 047 } 048}