1 /*
2 * Licensed to the University Corporation for Advanced Internet Development,
3 * Inc. (UCAID) under one or more contributor license agreements. See the
4 * NOTICE file distributed with this work for additional information regarding
5 * copyright ownership. The UCAID licenses this file to You under the Apache
6 * License, Version 2.0 (the "License"); you may not use this file except in
7 * compliance with the License. You may obtain a copy of the License at
8 *
9 * http://www.apache.org/licenses/LICENSE-2.0
10 *
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the License for the specific language governing permissions and
15 * limitations under the License.
16 */
17
18 package edu.internet2.middleware.shibboleth.idp.authn;
19
20 import org.joda.time.DateTime;
21 import org.opensaml.util.storage.AbstractExpiringObject;
22
23 /** Storage service entry for login contexts. */
24 public class LoginContextEntry extends AbstractExpiringObject {
25
26 /** Serial version UID. */
27 private static final long serialVersionUID = -1528197153404835381L;
28
29 /** Stored login context. */
30 private LoginContext loginCtx;
31
32 /**
33 * Constructor.
34 *
35 * @param ctx context to store
36 * @param lifetime lifetime of the entry
37 */
38 public LoginContextEntry(LoginContext ctx, long lifetime) {
39 super(new DateTime().plus(lifetime));
40 loginCtx = ctx;
41 }
42
43 /**
44 * Gets the login context.
45 *
46 * @return login context
47 */
48 public LoginContext getLoginContext() {
49 return loginCtx;
50 }
51 }