|
//---------------------------------------------------------------------------------------
// Copyright Notice
// This file contains proprietary information of The Austin Conner Group.
// Copying or reproduction without prior written approval is prohibited.
// Copyright (C) 2004 The Austin Conner Group. All rights reserved.
//
// The above copyright notice and this permission notice shall be included in all
// copies or substantial portions of the Software.
//
// Redistribution and use in source and binary forms, with or without modification,
// are permitted provided that the following conditions are met:
//
// * Redistributions of source code must retain the above copyright notice, this list
// of conditions and the following disclaimer.
//
// * Redistributions in binary form must reproduce the above copyright notice, this list
// of conditions and the following disclaimer in the documentation and/or other materials
// provided with the distribution.
//
// * Neither the name of The Austin Conner Group nor the names of its contributors may be
// used to endorse or promote products derived from this software without specific prior
// written permission.
//
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
// INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
// TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE
// OR OTHER DEALINGS IN THE SOFTWARE.
//---------------------------------------------------------------------------------------
// History
// 11/15/2004 The Austin Conner Group - J.R. Hull - Original Version
//---------------------------------------------------------------------------------------
using System;
using System.Collections;
namespace Sample.Objects.BusinessLogic
{
/// <summary>
/// Represents a collection of MaintenanceSchedule Objects.
/// </summary>
/// <remarks>
/// Provides a simple collection object that can represent a set of MaintenanceSchedule objects
/// </remarks>
public class MaintenanceScheduleCollection : CollectionBase
{
/// <summary>
/// Gets or sets the value associated with the specified key
/// </summary>
public MaintenanceSchedule this[ int index ]
{
get { return( (MaintenanceSchedule) List[index] );}
set { List[index] = value;}
}
/// <summary>
/// Adds an item to the MaintenanceSchedule Collection
/// </summary>
public int Add( MaintenanceSchedule value )
{
return( List.Add( value ) );
}
/// <summary>
/// Determines the index of a specific item in the MaintenanceSchedule Collection
/// </summary>
public int IndexOf( MaintenanceSchedule value )
{
return( List.IndexOf( value ) );
}
/// <summary>
/// Inserts an item to the MaintenanceSchedule Collection at the specified position
/// </summary>
public void Insert( int index, MaintenanceSchedule value )
{
List.Insert( index, value );
}
/// <summary>
/// Removes the first occurrence of MaintenanceSchedule in the MaintenanceSchedule Collection
/// </summary>
public void Remove( MaintenanceSchedule value )
{
List.Remove( value );
}
/// <summary>
/// Determines whether the MaintenanceSchedule Collection contains a specific MaintenanceSchedule
/// </summary>
public bool Contains( MaintenanceSchedule value )
{
// If value is not of type MaintenanceSchedule, this will return false.
return( List.Contains( value ) );
}
/// <summary>
/// Valiadtes before inserting a new MaintenanceSchedule into the MaintenanceSchedule Collection
/// </summary>
protected override void OnInsert( int index, Object value )
{
if ( value.GetType() != Type.GetType("Sample.Objects.BusinessLogic.MaintenanceSchedule") )
throw new ArgumentException( "value must be of type MaintenanceSchedule.", "value" );
}
/// <summary>
/// Valiadtes before removing a new MaintenanceSchedule into the MaintenanceSchedule Collection
/// </summary>
protected override void OnRemove( int index, Object value )
{
if ( value.GetType() != Type.GetType("Sample.Objects.BusinessLogic.MaintenanceSchedule") )
throw new ArgumentException( "value must be of type MaintenanceSchedule.", "value" );
}
/// <summary>
/// Valiadtes before setting a MaintenanceSchedule in MaintenanceSchedule Collection
/// </summary>
protected override void OnSet( int index, Object oldValue, Object newValue )
{
if ( newValue.GetType() != Type.GetType("Sample.Objects.BusinessLogic.MaintenanceSchedule") )
throw new ArgumentException( "newValue must be of type MaintenanceSchedule.", "newValue" );
}
/// <summary>
/// Performs additional custom processes when validating a value MaintenanceSchedule
/// </summary>
protected override void OnValidate( Object value )
{
if ( value.GetType() != Type.GetType("Sample.Objects.BusinessLogic.MaintenanceSchedule") )
throw new ArgumentException( "value must be of type MaintenanceSchedule." );
}
}
}
|
By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.
If a file you wish to view isn't highlighted, and is a text file (not binary), please
let us know and we'll add colourisation support for it.
Software Architect with 20++ years of software design and development experience with a strong hold in Object-Oriented software engineering using UML with Design Patterns. Architected and developed several industrial software packages and passed through full software development life-cycle. Currently managing a small group of developers, developing management software for the agriculture industry.