001/*
002 * Stallion Core: A Modern Web Framework
003 *
004 * Copyright (C) 2015 - 2016 Stallion Software LLC.
005 *
006 * This program is free software: you can redistribute it and/or modify it under the terms of the
007 * GNU General Public License as published by the Free Software Foundation, either version 2 of
008 * the License, or (at your option) any later version. This program is distributed in the hope that
009 * it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
010 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public
011 * License for more details. You should have received a copy of the GNU General Public License
012 * along with this program.  If not, see <http://www.gnu.org/licenses/gpl-2.0.html>.
013 *
014 *
015 *
016 */
017
018package io.stallion.requests;
019
020import io.stallion.plugins.javascript.Sandbox;
021import io.stallion.users.IOrg;
022import io.stallion.users.IUser;
023
024import javax.servlet.http.Cookie;
025import java.io.BufferedReader;
026import java.io.IOException;
027import java.util.Enumeration;
028import java.util.Map;
029import java.util.Set;
030
031import static io.stallion.utils.Literals.*;
032
033/**
034 * A dummy request object that is put in the context for the duration of executing
035 * an Async task, to prevent getting null reference errors.
036 *
037 */
038public class TaskRequest implements IRequest {
039    private IOrg org;
040    private IUser user;
041    private Map<String, Object> items = map();
042
043    @Override
044    public String requestUrl() {
045        return "";
046    }
047
048    @Override
049    public String getScheme() {
050        return "";
051    }
052
053    @Override
054    public String getQueryString() {
055        return "";
056    }
057
058
059    @Override
060    public String getRemoteAddr() {
061        return "";
062    }
063
064    @Override
065    public String getActualIp() { return ""; }
066
067    @Override
068    public Object getBodyObject(Class clazz) {
069        return null;
070    }
071
072    @Override
073    public Map<String, Object> getBodyMap() {
074        return map();
075    }
076
077    @Override
078    public Object getBodyParam(String name) {
079        return "";
080    }
081
082    @Override
083    public Map<String, String> getQueryParams() {
084        return map();
085    }
086
087    @Override
088    public Cookie[] getCookies() {
089        return new Cookie[0];
090    }
091
092    @Override
093    public Cookie getCookie(String cookieName) {
094        return null;
095    }
096
097    @Override
098    public String getPath() {
099        return "";
100    }
101
102    @Override
103    public void setPath(String path) {
104
105    }
106
107    @Override
108    public String getHost() {
109        return "localhost";
110    }
111
112    @Override
113    public String getHeader(String name) {
114        return "";
115    }
116
117    @Override
118    public BufferedReader getReader() throws IOException {
119        return null;
120    }
121
122    @Override
123    public String getContent() {
124        return "";
125    }
126
127    @Override
128    public Enumeration<String> getHeaderNames() {
129        return null;
130    }
131
132    @Override
133    public IUser getUser() {
134        return this.user;
135    }
136
137    @Override
138    public void setUser(IUser user) {
139        this.user = user;
140    }
141
142    @Override
143    public IOrg getOrg() {
144        return this.org;
145    }
146
147    @Override
148    public void setOrg(IOrg org) {
149        this.org = org;
150    }
151
152    @Override
153    public String getMethod() {
154        return "";
155    }
156
157    @Override
158    public String getParameter(String paramName) {
159        return "";
160    }
161
162    @Override
163    public Boolean getIsJsonRequest() {
164        return false;
165    }
166
167    @Override
168    public void setIsJsonRequest(Boolean isJsonRequest) {
169
170    }
171
172    @Override
173    public void setQuery(String query) {
174
175    }
176
177    @Override
178    public Map<String, Object> getItems() {
179        return this.items;
180    }
181
182    @Override
183    public void setItems(Map<String, Object> items) {
184        this.items = items;
185    }
186
187    public SandboxedRequest getSandboxedRequest(Sandbox box) {
188        return new SandboxedRequest(box, this);
189    }
190
191    @Override
192    public Set<String> getScopes() {
193        return set();
194    }
195
196    @Override
197    public TaskRequest setScopes(Set<String> scopes) {
198        return this;
199    }
200
201    @Override
202    public boolean isScoped() {
203        return false;
204    }
205
206    @Override
207    public TaskRequest setScoped(boolean scoped) {
208        return this;
209    }
210}