Skip to content

Commit 7f12e26

Browse files
committed
code corrections
1 parent 2d811ba commit 7f12e26

File tree

6 files changed

+39
-35
lines changed

6 files changed

+39
-35
lines changed

logicaldoc-webdav/pom.xml

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -21,9 +21,8 @@
2121
</dependency>
2222
<dependency>
2323
<groupId>javax.servlet</groupId>
24-
<artifactId>servlet-api</artifactId>
25-
<version>2.5</version>
26-
<scope>provided</scope>
24+
<artifactId>javax.servlet-api</artifactId>
25+
<scope>compile</scope>
2726
</dependency>
2827
<dependency>
2928
<groupId>org.apache.jackrabbit</groupId>

logicaldoc-webdav/src/main/java/com/logicaldoc/webdav/cache/WebdavCache.java

Lines changed: 21 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,10 @@ public class WebdavCache {
2424

2525
private static final Logger log = LoggerFactory.getLogger(WebdavCache.class);
2626

27+
private static final String CACHE_TABLE = "ld_webdavcahe";
28+
29+
private static final String WHERE_ID = " WHERE ID = ?";
30+
2731
private DataSource dataSource;
2832

2933
private JdbcTemplate jdbcTemplate;
@@ -46,7 +50,7 @@ public static WebdavCache getInstance() {
4650
}
4751

4852
private DataSource createDataSource() {
49-
return new EmbeddedDatabaseBuilder().setType(EmbeddedDatabaseType.HSQL).addScript("classpath:WDCache.sql")
53+
return new EmbeddedDatabaseBuilder().setType(EmbeddedDatabaseType.HSQL).addScript("classpath:wdcache.sql")
5054
.build();
5155
}
5256

@@ -55,24 +59,24 @@ private JdbcTemplate getTemplate(DataSource dataSource) {
5559
}
5660

5761
public int addFolder(WebdavCacheFolder cf) {
58-
int result = jdbcTemplate.update("UPDATE mycache SET path = ?, size = ? WHERE ID = ?", cf.getId(), cf.getPath(),
59-
cf.getSize());
62+
int result = jdbcTemplate.update("UPDATE " + CACHE_TABLE + " SET path = ?, size = ? WHERE ID = ?", cf.getPath(),
63+
cf.getSize(), cf.getId());
6064
if (result == 0)
61-
result = jdbcTemplate.update("INSERT INTO mycache VALUES (?, ?, ?)", cf.getId(), cf.getPath(),
65+
result = jdbcTemplate.update("INSERT INTO " + CACHE_TABLE + " VALUES (?, ?, ?)", cf.getId(), cf.getPath(),
6266
cf.getSize());
6367
return result;
6468
}
6569

6670
public WebdavCacheFolder getFolder(long id) {
67-
String query = "SELECT * FROM mycache WHERE ID = ?";
71+
String query = "SELECT * FROM " + CACHE_TABLE + WHERE_ID;
6872
return jdbcTemplate.queryForObject(query, (rowSet, rowNum) -> new WebdavCacheFolder(rowSet.getLong("ID"),
6973
rowSet.getString("path"), rowSet.getLong("size")), id);
7074
}
7175

7276
public long getFolderSize(long id) {
7377
try {
7478
return jdbcTemplate != null
75-
? jdbcTemplate.queryForObject("SELECT size FROM mycache WHERE ID = " + id, Long.class)
79+
? jdbcTemplate.queryForObject("SELECT size FROM " + CACHE_TABLE + WHERE_ID, Long.class, id)
7680
: 0L;
7781
} catch (NullPointerException | DataAccessException e) {
7882
return 0L;
@@ -82,8 +86,8 @@ public long getFolderSize(long id) {
8286
public long getTreeSize(long id) {
8387
try {
8488
return jdbcTemplate != null
85-
? jdbcTemplate.queryForObject("SELECT SUM(size) FROM mycache WHERE path LIKE '%" + id + "%'",
86-
Long.class)
89+
? jdbcTemplate.queryForObject("SELECT SUM(size) FROM " + CACHE_TABLE + " WHERE path LIKE ?",
90+
Long.class, "%" + id + "%")
8791
: 0L;
8892
} catch (NullPointerException | DataAccessException e) {
8993
return 0;
@@ -92,7 +96,8 @@ public long getTreeSize(long id) {
9296

9397
public int countElements() {
9498
try {
95-
return jdbcTemplate != null ? jdbcTemplate.queryForObject("SELECT COUNT(*) FROM mycache", Integer.class)
99+
return jdbcTemplate != null
100+
? jdbcTemplate.queryForObject("SELECT COUNT(*) FROM " + CACHE_TABLE, Integer.class)
96101
: 0;
97102
} catch (NullPointerException | DataAccessException e) {
98103
return 0;
@@ -101,27 +106,28 @@ public int countElements() {
101106

102107
public int setFolderPath(Folder folder) {
103108
if (folder != null && !StringUtils.isEmpty(folder.getPath())) {
104-
int result = jdbcTemplate.update("UPDATE mycache SET path = ? WHERE ID = ?", folder.getPath(),
109+
int result = jdbcTemplate.update("UPDATE " + CACHE_TABLE + " SET path = ? WHERE ID = ?", folder.getPath(),
105110
folder.getId());
106111
if (result == 0) {
107-
result = jdbcTemplate.update("INSERT INTO mycache VALUES (?, ?, ?)", folder.getId(), folder.getPath(),
108-
0);
112+
result = jdbcTemplate.update("INSERT INTO " + CACHE_TABLE + " VALUES (?, ?, ?)", folder.getId(),
113+
folder.getPath(), 0);
109114
}
110115
return result;
111116
} else {
112117
return 0;
113118
}
114119
}
115120

116-
public String getFolderPath(long folderID) {
121+
public String getFolderPath(long folderId) {
117122
try {
118-
return jdbcTemplate.queryForObject("SELECT path FROM mycache WHERE ID = " + folderID, String.class);
123+
return jdbcTemplate.queryForObject("SELECT path FROM " + CACHE_TABLE + WHERE_ID, String.class,
124+
folderId);
119125
} catch (NullPointerException | DataAccessException e) {
120126
return null;
121127
}
122128
}
123129

124130
public int truncate() {
125-
return jdbcTemplate.update("DELETE FROM mycache");
131+
return jdbcTemplate.update("DELETE FROM " + CACHE_TABLE);
126132
}
127133
}

logicaldoc-webdav/src/main/java/com/logicaldoc/webdav/web/AbstractWebdavServlet.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -140,6 +140,9 @@ public void service(HttpServletRequest request, HttpServletResponse response) {
140140
// Add session cookie to the response
141141
Cookie scookie = new Cookie("ldoc-sid", session.getSid());
142142
scookie.setMaxAge(1800);
143+
scookie.setHttpOnly(true);
144+
scookie.setSecure(Context.get().getProperties().getBoolean("cookies.secure", false));
145+
143146
webdavResponse.addCookie(scookie);
144147

145148
getPath(webdavRequest);

logicaldoc-webdav/src/main/resources/WDCache.sql renamed to logicaldoc-webdav/src/main/resources/wdcache.sql

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
CREATE TABLE mycache (
1+
CREATE TABLE ld_webdavcahe (
22
ID BIGINT PRIMARY KEY,
33
path VARCHAR(255) NOT NULL,
44
size BIGINT NOT NULL

logicaldoc-webdav/src/test/java/com/logicaldoc/webdav/AbstractWebdavTestCase.java

Lines changed: 11 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -67,21 +67,17 @@ protected void prepareSession(String username, String password) throws Persisten
6767
device.setOperativeSystem("Windows");
6868
client.setDevice(device);
6969
session = SessionManager.get().newSession(username, password, null, client);
70-
if (session != null) {
71-
System.out.println("session enstablished");
72-
User user = userDao.findByUsernameIgnoreCase(username);
73-
userDao.initialize(user);
74-
LDAuthenticationToken token = new LDAuthenticationToken(username);
75-
token.setSid(session.getSid());
76-
SecurityContextHolder.getContext().setAuthentication(token);
77-
78-
LDSecurityContextRepository.bindServletSession(session.getSid(), servletSession);
79-
80-
davSession = new DavSessionImpl();
81-
davSession.putObject("id", session.getUserId());
82-
davSession.putObject("sid", session.getSid());
83-
} else
84-
System.out.println("session NOT enstablished");
70+
User user = userDao.findByUsernameIgnoreCase(username);
71+
userDao.initialize(user);
72+
LDAuthenticationToken token = new LDAuthenticationToken(username);
73+
token.setSid(session.getSid());
74+
SecurityContextHolder.getContext().setAuthentication(token);
75+
76+
LDSecurityContextRepository.bindServletSession(session.getSid(), servletSession);
77+
78+
davSession = new DavSessionImpl();
79+
davSession.putObject("id", session.getUserId());
80+
davSession.putObject("sid", session.getSid());
8581
}
8682

8783
private void prepareRepository() throws IOException {

logicaldoc-webdav/src/test/java/com/logicaldoc/webdav/cache/WDCacheTest.java renamed to logicaldoc-webdav/src/test/java/com/logicaldoc/webdav/cache/WebdavCacheTest.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88

99
import com.logicaldoc.core.folder.Folder;
1010

11-
public class WDCacheTest {
11+
public class WebdavCacheTest {
1212

1313
WebdavCache wdc;
1414

0 commit comments

Comments
 (0)