Example #1
0
        /// <summary>
        /// Creates a new instance of the evaluaion context.
        /// </summary>
        /// <param name="engine">The engine instance.</param>
        /// <param name="policyDocument">The policy document instance.</param>
        /// <param name="contextDocument">The context document instance.</param>
        public EvaluationContext(EvaluationEngine engine, pol.PolicyDocument policyDocument, ctx.ContextDocument contextDocument)
            : this()
        {
            ctx.AttributeReadWriteCollection attributes = new ctx.AttributeReadWriteCollection();
            foreach (ctx.AttributeElementReadWrite attribute in contextDocument.Request.Resources[0].Attributes)
            {
                attributes.Add(new ctx.AttributeElementReadWrite(attribute));
            }

            ctx.ResourceContentElement resourceContent = null;
            if (contextDocument.Request.Resources[0].ResourceContent != null)
            {
                resourceContent = new ctx.ResourceContentElement(
                    contextDocument.Request.Resources[0].ResourceContent.XmlDocument,
                    contextDocument.Request.Resources[0].ResourceContent.SchemaVersion);
            }

            _engine          = engine;
            _policyDocument  = policyDocument;
            _contextDocument = contextDocument;
            _currentResource = new ctx.ResourceElementReadWrite(
                resourceContent,
                contextDocument.Request.Resources[0].ResourceScopeValue,
                attributes,
                contextDocument.Request.Resources[0].SchemaVersion);
        }
 /// <summary>
 /// Gets the index of the given ResourceElementReadWrite in the collection
 /// </summary>
 /// <param name="resource"></param>
 /// <returns></returns>
 public int GetIndex(ResourceElementReadWrite resource)
 {
     for (int i = 0; i < this.Count; i++)
     {
         if (this.List[i] == resource)
         {
             return(i);
         }
     }
     return(-1);
 }
Example #3
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="resource"></param>
        public Resource(con.ResourceElementReadWrite resource)
        {
            // This call is required by the Windows.Forms Form Designer.
            InitializeComponent();

            _resource = resource;

            if (_resource.ResourceContent != null)
            {
                txtContent.Text = _resource.ResourceContent.XmlDocument.InnerXml;
            }
        }
Example #4
0
		/// <summary>
		/// 
		/// </summary>
		/// <param name="resource"></param>
		public Resource( con.ResourceElementReadWrite resource )
		{
			// This call is required by the Windows.Forms Form Designer.
			InitializeComponent();

			_resource = resource;
						
			if( _resource.ResourceContent != null )
			{
				txtContent.Text = _resource.ResourceContent.XmlDocument.InnerXml;
			}
		}
Example #5
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="resource"></param>
        public Resource(con.ResourceElementReadWrite resource)
        {
            _resource = resource;

            this.Text = "Resource";
            this.SelectedImageIndex = 2;
            this.ImageIndex         = 2;

            foreach (con.AttributeElementReadWrite attr in _resource.Attributes)
            {
                this.Nodes.Add(new Attribute(attr));
            }
        }
Example #6
0
		/// <summary>
		/// 
		/// </summary>
		/// <param name="resource"></param>
		public Resource( con.ResourceElementReadWrite resource )
		{
			_resource = resource;

			this.Text = "Resource";
			this.SelectedImageIndex = 2;
			this.ImageIndex = 2;

			foreach( con.AttributeElementReadWrite attr in _resource.Attributes )
			{
				this.Nodes.Add( new Attribute( attr ) );
			}
		}
Example #7
0
        /// <summary>
        /// Adds an object to the end of the CollectionBase.
        /// </summary>
        /// <param name="value">The Object to be added to the end of the CollectionBase. </param>
        /// <returns>The CollectionBase index at which the value has been added.</returns>
        public override int Add(ResourceElementReadWrite value)
        {
            if (value == null)
            {
                throw new ArgumentNullException("value");
            }
            ResourceContentElement resourceContent = null;

            if (value.ResourceContent != null)
            {
                resourceContent = new ResourceContentElement(value.ResourceContent.XmlDocument, value.ResourceContent.SchemaVersion);
            }
            return(List.Add(new ResourceElement(resourceContent, value.ResourceScopeValue, new AttributeCollection(value.Attributes), value.SchemaVersion)));
        }
Example #8
0
		/// <summary>
		/// Adds an object to the end of the CollectionBase.
		/// </summary>
		/// <param name="value">The Object to be added to the end of the CollectionBase. </param>
		/// <returns>The CollectionBase index at which the value has been added.</returns>
		public override int Add( ResourceElementReadWrite value )  
		{
            if (value == null) throw new ArgumentNullException("value");
			ResourceContentElement resourceContent = null;
			if( value.ResourceContent != null )
			{
				resourceContent = new ResourceContentElement(value.ResourceContent.XmlDocument, value.ResourceContent.SchemaVersion);
			}
			return( List.Add( new ResourceElement( resourceContent, value.ResourceScopeValue, new AttributeCollection(value.Attributes), value.SchemaVersion ) ) );
		}
 /// <summary>
 /// Adds an object to the end of the CollectionBase.
 /// </summary>
 /// <param name="value">The Object to be added to the end of the CollectionBase. </param>
 /// <returns>The CollectionBase index at which the value has been added.</returns>
 public virtual int Add(ResourceElementReadWrite value)
 {
     return(List.Add(value));
 }
Example #10
0
		/// <summary>
		/// Creates a new instance of the evaluaion context.
		/// </summary>
		/// <param name="engine">The engine instance.</param>
		/// <param name="policyDocument">The policy document instance.</param>
		/// <param name="contextDocument">The context document instance.</param>
		public EvaluationContext( EvaluationEngine engine, pol.PolicyDocument policyDocument, ctx.ContextDocument contextDocument )
			: this()
		{
			ctx.AttributeReadWriteCollection attributes = new ctx.AttributeReadWriteCollection();
			foreach( ctx.AttributeElementReadWrite attribute in contextDocument.Request.Resources[0].Attributes )
			{
				attributes.Add( new ctx.AttributeElementReadWrite( attribute ) );
			}

			ctx.ResourceContentElement resourceContent = null;
			if( contextDocument.Request.Resources[0].ResourceContent != null )
			{
				resourceContent = new ctx.ResourceContentElement( 
						contextDocument.Request.Resources[0].ResourceContent.XmlDocument, 
						contextDocument.Request.Resources[0].ResourceContent.SchemaVersion );
			}

			_engine = engine;
			_policyDocument = policyDocument;
			_contextDocument = contextDocument;
			_currentResource = new ctx.ResourceElementReadWrite( 
				resourceContent,
				contextDocument.Request.Resources[0].ResourceScopeValue, 
				attributes, 
				contextDocument.Request.Resources[0].SchemaVersion );
		}
Example #11
0
		private void CreateContextResourceElement( object sender, EventArgs args)
		{
			con.ResourceElementReadWrite newResource = new con.ResourceElementReadWrite(null, con.ResourceScope.Immediate, new con.AttributeReadWriteCollection(), XacmlVersion.Version11);
			Request requestNode = (Request)mainTree.SelectedNode;
			Resource newNode = new Resource( newResource );
			con.RequestElementReadWrite request = requestNode.RequestDefinition;

			if( request.Resources == null )
			{
				request.Resources = new con.ResourceReadWriteCollection();
			}
			request.Resources.Add( newResource );
			requestNode.Nodes.Add( newNode );
		}
		/// <summary>
		/// Gets the index of the given ResourceElementReadWrite in the collection
		/// </summary>
		/// <param name="resource"></param>
		/// <returns></returns>
		public int GetIndex( ResourceElementReadWrite resource )
		{
			for( int i=0; i<this.Count; i++ )
			{
				if( this.List[i] == resource )
				{
					return i;
				}
			}
			return -1;
		}
		/// <summary>
		/// Adds an object to the end of the CollectionBase.
		/// </summary>
		/// <param name="value">The Object to be added to the end of the CollectionBase. </param>
		/// <returns>The CollectionBase index at which the value has been added.</returns>
		public virtual int Add( ResourceElementReadWrite value )  
		{
			return( List.Add( value ) );
		}