EN · DE · RU · FR · ES

#3170: AbstractSecuredForm.java

projectforge-wicket/src/main/java/org/projectforge/web/wicket/AbstractSecuredForm.java Java-класс, projectforge-wicket/src/main/java/org/projectforge/web/wicket/AbstractSecuredForm.java 88 строк · 35 кода · 43 комментария · 10 пустых
Назначение: Исходный файл: projectforge/web/wicket/AbstractSecuredForm.java. AbstractSecuredForm.java является частью приложения управления проектами с открытым исходным кодом ProjectForge.

Исходный код (первые 100 строк)

/////////////////////////////////////////////////////////////////////////////
//
// Project ProjectForge Community Edition
//         www.projectforge.org
//
// Copyright (C) 2001-2026 Micromata GmbH, Germany (www.micromata.com)
//
// ProjectForge имеет двойную лицензию.
//
// Эта версия для сообщества является бесплатным программным обеспечением; вы можете распространять и/или
// изменять её в соответствии с условиями Стандартной общественной лицензии GNU (GNU General Public License) в том виде,
// в каком она опубликована Фондом свободного программного обеспечения; версия 3 Лицензии.
//
// Эта версия для сообщества распространяется в надежде, что она будет полезной,
// но БЕЗ КАКИХ-ЛИБО ГАРАНТИЙ; даже без подразумеваемой гарантии
// КОММЕРЧЕСКОЙ ЦЕННОСТИ или ПРИГОДНОСТИ ДЛЯ ОПРЕДЕЛЁННОЙ ЦЕЛИ. См. Стандартную общественную
// лицензию GNU для получения более подробной информации.
//
// Вы должны были получить копию Стандартной общественной лицензии GNU вместе
// с этой программой; если нет, см. http://www.gnu.org/licenses/.
//
/////////////////////////////////////////////////////////////////////////////

package org.projectforge.web.wicket;

import org.apache.wicket.markup.html.WebPage;
import org.apache.wicket.markup.html.form.IFormSubmitter;

public abstract class AbstractSecuredForm<F, P extends AbstractSecuredBasePage> extends AbstractForm<F, P>
{
  private static final long serialVersionUID = 5034574268522349613L;

  /**
   * Токен для защиты от межсайтовой подделки запроса (CSRF).
   */
  private final CsrfTokenHandler csrfTokenHandler;

  public AbstractSecuredForm(final P parentPage)
  {
    super(parentPage);
    csrfTokenHandler = new CsrfTokenHandler(this);
  }

  /**
   * Проверяет CSRF-токен непосредственно перед вызовом методов onSubmit, иначе может быть слишком поздно.
   */
  @Override
  protected void delegateSubmit(IFormSubmitter submittingComponent)
  {
    csrfTokenHandler.onSubmit();
    super.delegateSubmit(submittingComponent);
  }

  /**
   * @param key
   * @see AbstractSecuredPage#getUserPrefEntry(String)
   */
  public Object getUserPrefEntry(final String key)
  {
    return parentPage.getUserPrefEntry(key);
  }

  /**
   * @param expectedType
   * @param key
   * @see AbstractSecuredPage#getUserPrefEntry(Class, String)
   */
  public Object getUserPrefEntry(final Class<?> expectedType, final String key)
  {
    return parentPage.getUserPrefEntry(expectedType, key);
  }

  /**
   * @param key
   * @param value
   * @param persistent
   * @see AbstractSecuredPage#putUserPrefEntry(String, Object, boolean)
   */
  public void putUserPrefEntry(final String key, final Object value, final boolean persistent)
  {
    parentPage.putUserPrefEntry(key, value, persistent);
  }

  public WebPage getReturnToPage()
  {
    return ((AbstractSecuredPage) this.parentPage).getReturnToPage();
  }
}

История Git

868d6abb7 2025 -> 2026
63081666f Заголовки исходных файлов: 2024 -> 2025.
b6092df09 Авторские права 2023 -> 2024
ab45d51fa Авторские права 2001-2022 -> 2001-2023.
5f7ef41b8 Авторские права 2021 -> 2022

868d6abb7

2025 -> 2026
868d6abb75cd191a892911ac8e45058932cf9074
diff --git a/projectforge-wicket/src/main/java/org/projectforge/web/wicket/AbstractSecuredForm.java b/projectforge-wicket/src/main/java/org/projectforge/web/wicket/AbstractSecuredForm.java
index c9f0fe450..a41b76fc2 100644
--- a/projectforge-wicket/src/main/java/org/projectforge/web/wicket/AbstractSecuredForm.java
+++ b/projectforge-wicket/src/main/java/org/projectforge/web/wicket/AbstractSecuredForm.java
@@ -3,7 +3,7 @@
 // Project ProjectForge Community Edition
 //         www.projectforge.org
 //
-// Copyright (C) 2001-2025 Micromata GmbH, Germany (www.micromata.com)
+// Copyright (C) 2001-2026 Micromata GmbH, Germany (www.micromata.com)
 //
 // ProjectForge is dual-licensed.
 //

63081666f

Заголовки исходных файлов: 2024 -> 2025.
63081666f620fb87315f01b817e560e0b2f6a33a
diff --git a/projectforge-wicket/src/main/java/org/projectforge/web/wicket/AbstractSecuredForm.java b/projectforge-wicket/src/main/java/org/projectforge/web/wicket/AbstractSecuredForm.java
index ffc897da4..c9f0fe450 100644
--- a/projectforge-wicket/src/main/java/org/projectforge/web/wicket/AbstractSecuredForm.java
+++ b/projectforge-wicket/src/main/java/org/projectforge/web/wicket/AbstractSecuredForm.java
@@ -3,7 +3,7 @@
 // Project ProjectForge Community Edition
 //         www.projectforge.org
 //
-// Copyright (C) 2001-2024 Micromata GmbH, Germany (www.micromata.com)
+// Copyright (C) 2001-2025 Micromata GmbH, Germany (www.micromata.com)
 //
 // ProjectForge is dual-licensed.
 //

b6092df09

Авторские права 2023 -> 2024
b6092df0927c4a3b161e888445f31dcab57493f2
diff --git a/projectforge-wicket/src/main/java/org/projectforge/web/wicket/AbstractSecuredForm.java b/projectforge-wicket/src/main/java/org/projectforge/web/wicket/AbstractSecuredForm.java
index 25b5717f0..ffc897da4 100644
--- a/projectforge-wicket/src/main/java/org/projectforge/web/wicket/AbstractSecuredForm.java
+++ b/projectforge-wicket/src/main/java/org/projectforge/web/wicket/AbstractSecuredForm.java
@@ -3,7 +3,7 @@
 // Project ProjectForge Community Edition
 //         www.projectforge.org
 //
-// Copyright (C) 2001-2023 Micromata GmbH, Germany (www.micromata.com)
+// Copyright (C) 2001-2024 Micromata GmbH, Germany (www.micromata.com)
 //
 // ProjectForge is dual-licensed.
 //

ab45d51fa

Авторские права 2001-2022 -> 2001-2023.
ab45d51fa419ede6174b31d69987f96d4b841ff9
diff --git a/projectforge-wicket/src/main/java/org/projectforge/web/wicket/AbstractSecuredForm.java b/projectforge-wicket/src/main/java/org/projectforge/web/wicket/AbstractSecuredForm.java
index b8b74d5e2..25b5717f0 100644
--- a/projectforge-wicket/src/main/java/org/projectforge/web/wicket/AbstractSecuredForm.java
+++ b/projectforge-wicket/src/main/java/org/projectforge/web/wicket/AbstractSecuredForm.java
@@ -3,7 +3,7 @@
 // Project ProjectForge Community Edition
 //         www.projectforge.org
 //
-// Copyright (C) 2001-2022 Micromata GmbH, Germany (www.micromata.com)
+// Copyright (C) 2001-2023 Micromata GmbH, Germany (www.micromata.com)
 //
 // ProjectForge is dual-licensed.
 //

5f7ef41b8

Авторские права 2021 -> 2022
5f7ef41b8cbbf29b1bff094f0c0b708dcaecb19e
diff --git a/projectforge-wicket/src/main/java/org/projectforge/web/wicket/AbstractSecuredForm.java b/projectforge-wicket/src/main/java/org/projectforge/web/wicket/AbstractSecuredForm.java
index 02a523790..b8b74d5e2 100644
--- a/projectforge-wicket/src/main/java/org/projectforge/web/wicket/AbstractSecuredForm.java
+++ b/projectforge-wicket/src/main/java/org/projectforge/web/wicket/AbstractSecuredForm.java
@@ -3,7 +3,7 @@
 // Project ProjectForge Community Edition
 //         www.projectforge.org
 //
-// Copyright (C) 2001-2021 Micromata GmbH, Germany (www.micromata.com)
+// Copyright (C) 2001-2022 Micromata GmbH, Germany (www.micromata.com)
 //
 // ProjectForge is dual-licensed.
 //