|
JavaTM Platform Standard Ed. 6 |
|||||||||
앞의 클래스 다음의 클래스 | 프레임 있어 프레임 없음 | |||||||||
개요: 상자 | 필드 | 생성자 | 메소드 | 상세: 필드 | 생성자 | 메소드 |
java.lang.Objectjava.security.PermissionCollection
public abstract class PermissionCollection
Permission 객체의 컬렉션을 나타내는 abstract 클래스입니다.
PermissionCollection 를 사용하면(자), 이하의 처리를 실시할 수 있습니다.
add
메소드를 사용해, 컬렉션에 액세스권을 추가한다
implies
메소드를 사용해, 특정의 액세스권이 컬렉션에 포함되어 있는지 어떤지를 조사한다
elements
메소드를 사용해, 모든 액세스권을 열거한다
같은 형태의 복수의 Permission 객체를 그룹화 하려면 , 우선 그 특정의 형태에 대해서 newPermissionCollection
메소드를 호출할 필요가 있습니다. Permission 클래스의 경우, 이 메소드의 디폴트 동작은 단순하게 null 를 돌려준다고 하는 것입니다. PermissionCollection.implies
메소드의 호출시에 올바른 시멘틱스를 제공할 수 있도록(듯이) 특정의 PermissionCollection 객체내에 액세스권을 포함할 필요가 있는 경우에는, Permission 클래스의 서브 클래스가 newPermissionCollection
메소드를 오버라이드(override) 합니다. 이 메소드로부터 null 이외의 값이 돌려주어졌을 경우, 그 PermissionCollection 를 사용할 필요가 있습니다. null 가 돌려주어졌을 경우,newPermissionCollection
의 호출원래는, 지정된 종류의 액세스권을, 임의의 PermissionCollection (Hashtable 를 사용하는 것, Vector 를 사용하는 것 등)에 자유롭게 포함할 수 있습니다.
Permission.newPermissionCollection
메소드가 돌려주는 PermissionCollection 는 동종 컬렉션이며, 지정된 종류의 액세스권의 Permission 객체만을 포함합니다. PermissionCollection 는 이종 컬렉션이기도 합니다. 예를 들어 Permissions 는, PermissionCollections 의 컬렉션을 나타내는 PermissionCollection 서브 클래스입니다. 즉 그 멤버는, 각각이 동종의 PermissionCollection 입니다. 예를 들어 Permissions 객체는, 모든 FilePermission 객체에 대해서는 FilePermissionCollection, 모든 SocketPermission 객체에 대해서는 SocketPermissionCollection 등이라고 하는 대응으로 컬렉션을 가집니다. 그 add
메소드는 액세스권을 적절한 컬렉션에 추가합니다.
Permissions 등의 이종의 PermissionCollection 에 액세스권을 추가할 때, 지정된 액세스권에 대한 PermissionCollection 가 그 PermissionCollection 내에 존재하지 않았던 경우, 그 PermissionCollection 는, 그 액세스권의 클래스상에서 newPermissionCollection
메소드를 호출해, 그것이 특별한 PermissionCollection 를 필요로 할지 어떨지를 확인할 필요가 있습니다. newPermissionCollection
로부터 null 가 돌려주어졌을 경우, 그 PermissionCollection 는 임의의 종류의 PermissionCollection (Hastable 를 사용하는 것, Vector 를 사용하는 것 등)에 그 액세스권을 포함할 수 있습니다. 예를 들어, Permissions 객체는, 액세스권 객체를 Hashtable 에 포함하는, 디폴트의 PermissionCollection 구현을 사용합니다.
PermissionCollection 의 서브 클래스 구현은, 복수 thread로부터 동시에 불려 가는 것을 상정하지 않으면 안되어, 그 때문에, 적절히 동기를 취할 필요가 있습니다. 그 만큼이 아니고,elements
메소드로 반환되는 Enumerations 는 「fail-fast」가 아닙니다. 컬렉션의 열거중에, 컬렉션에 변경을 더해서는 안됩니다.
Permission
,
Permissions
,
직렬화 된 형식 생성자 의 개요 | |
---|---|
PermissionCollection ()
|
메소드의 개요 | |
---|---|
abstract void |
add (Permission permission)
액세스권 객체의 현재의 컬렉션에 액세스권 객체를 추가합니다. |
abstract Enumeration <Permission > |
elements ()
컬렉션내의 모든 Permission 객체의 열거를 돌려줍니다. |
abstract boolean |
implies (Permission permission)
지정된 액세스권이, 이 PermissionCollection 로 보관 유지되는 Permission 객체의 컬렉션에 의해 포함 될지 어떨지를 판정합니다. |
boolean |
isReadOnly ()
PermissionCollection 객체가 읽어내 전용으로서 마크 되고 있는 경우에 true 를 돌려줍니다. |
void |
setReadOnly ()
PermissionCollection 객체를 「읽기 전용」으로서 마크 합니다. |
String |
toString ()
PermissionCollection 객체를 기술하는 캐릭터 라인을 돌려주어, 객체가 보관 유지하는 모든 액세스권에 대한 정보를 제공합니다. |
클래스 java.lang. Object 로부터 상속된 메소드 |
---|
clone , equals , finalize , getClass , hashCode , notify , notifyAll , wait , wait , wait |
생성자 의 상세 |
---|
public PermissionCollection()
메소드의 상세 |
---|
public abstract void add(Permission permission)
permission
- 추가되는 Permission 객체
SecurityException
- - 이 PermissionCollection 객체가 읽어내 전용으로서 마크 되고 있는 경우public abstract boolean implies(Permission permission)
permission
- 비교 대상의 Permission 객체
public abstract Enumeration <Permission > elements()
public void setReadOnly()
add
로 PermissionCollection 에 추가할 수 없습니다.
public boolean isReadOnly()
add
로 PermissionCollection 에 추가할 수 없습니다.
디폴트에서는, 객체는 읽어내 전용이 아닙니다. setReadOnly
를 호출하는 것에 의해 읽기 전용으로 설정할 수 있습니다.
public String toString()
super.toString() ( // 모든 Permission 객체를 // 열거해, 행 마다 1 회씩 // toString()를 호출합니다. )
super.toString
는, 이 객체의 슈퍼 클래스 (즉 Object)의 toString
메소드의 호출입니다. 결과적으로 반환되는 것은, 이 PermissionCollection 의 종류명의 후에 이 객체의 해시 코드가 계속되는 캐릭터 라인이므로, 복수의 PermissionCollections 객체가 같은 액세스권을 보관 유지하는 경우에서도, 클라이언트는 각 객체를 구별할 수 있습니다.
Object
내의 toString
|
JavaTM Platform Standard Ed. 6 |
|||||||||
앞의 클래스 다음의 클래스 | 프레임 있어 프레임 없음 | |||||||||
개요: 상자 | 필드 | 생성자 | 메소드 | 상세: 필드 | 생성자 | 메소드 |
Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms . Documentation Redistribution Policy 도 참조해 주세요.